# Trait std::str::FromStr 1.0.0 [−] [src]

    pub trait FromStr {
        type Err;
        fn from_str(s: &str) -> Result<Self, Self::Err>;
    }

A trait to abstract the idea of creating a new instance of a type from a string.

`FromStr`'s `from_str()` method is often used implicitly, through `str`'s `parse()` method. See `parse()`'s documentation for examples.

## Associated Types

### `type Err`

The associated error which can be returned from parsing.

## Required Methods

### `fn from_str(s: &str) -> Result<Self, Self::Err>`

Parses a string `s` to return a value of this type.

If parsing succeeds, return the value inside `Ok`, otherwise when the string is ill-formatted return an error specific to the inside `Err`. The error type is specific to implementation of the trait.

# Examples

Basic usage with `i32`, a type that implements `FromStr`:

    use std::str::FromStr;

    let s = "5";
    let x = i32::from_str(s).unwrap();

    assert_eq!(5, x);Run

## Implementors

- `impl FromStr for String`
- `impl FromStr for bool`
- `impl FromStr for f32`
- `impl FromStr for f64`
- `impl FromStr for isize`
- `impl FromStr for i8`
- `impl FromStr for i16`
- `impl FromStr for i32`
- `impl FromStr for i64`
- `impl FromStr for i128`
- `impl FromStr for usize`
- `impl FromStr for u8`
- `impl FromStr for u16`
- `impl FromStr for u32`
- `impl FromStr for u64`
- `impl FromStr for u128`
- `impl FromStr for IpAddr`
- `impl FromStr for Ipv4Addr`
- `impl FromStr for Ipv6Addr`
- `impl FromStr for SocketAddrV4`
- `impl FromStr for SocketAddrV6`
- `impl FromStr 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
+
  Collapse/expand all sections

## 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` or `* -> vec`)