# Enum std::net::SocketAddr [−] [src]

    pub enum SocketAddr {
        V4(SocketAddrV4),
        V6(SocketAddrV6),
    }

Representation of a socket address for networking applications.

A socket address can either represent the IPv4 or IPv6 protocol and is paired with at least a port number as well. Each protocol may have more specific information about the address available to it as well.

## Variants

`V4` | An IPv4 socket address which is a (ip, port) combination.
`V6` | An IPv6 socket address

## Methods

### `impl SocketAddr`

#### `fn new(ip: IpAddr, port: u16) -> SocketAddr`

Creates a new socket address from the (ip, port) pair.

#### `fn ip(&self) -> IpAddr`

Returns the IP address associated with this socket address.

#### `fn port(&self) -> u16`

Returns the port number associated with this socket address.

## Trait Implementations

### `impl Display for SocketAddr`

#### `fn fmt(&self, f: &mut Formatter) -> Result`

### `impl ToSocketAddrs for SocketAddr`

#### `type Iter = IntoIter<SocketAddr>`

#### `fn to_socket_addrs(&self) -> Result<IntoIter<SocketAddr>>`

### `impl FromStr for SocketAddr`

#### `type Err = AddrParseError`

#### `fn from_str(s: &str) -> Result<SocketAddr, AddrParseError>`

### Derived Implementations

### `impl Debug for SocketAddr`

#### `fn fmt(&self, __arg_0: &mut Formatter) -> Result`

### `impl Hash for SocketAddr`

#### `fn hash<__H: Hasher>(&self, __arg_0: &mut __H)`

#### `fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher`

### `impl Eq for SocketAddr`

### `impl PartialEq for SocketAddr`

#### `fn eq(&self, __arg_0: &SocketAddr) -> bool`

#### `fn ne(&self, __arg_0: &SocketAddr) -> bool`

### `impl Clone for SocketAddr`

#### `fn clone(&self) -> SocketAddr`

#### `fn clone_from(&mut self, source: &Self)`

### `impl Copy for SocketAddr`

# Help

## Keyboard Shortcuts

?
  Show this help dialog
S
  Focus the search field
⇤
  Move up in search results
⇥
  Move down in search results
⏎
  Go to active search result

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize`)