[][src]Function lexical::try_parse

pub fn try_parse<N: Aton, Bytes: AsRef<[u8]>>(bytes: Bytes) -> Result<N, usize>

High-level conversion of decimal-encoded bytes to a number.

This function only returns a value if the entire string is successfully parsed. For an unchecked version of this function, use parse.

  • bytes - Byte slice to convert to number.

Examples

// String overloads
assert_eq!(lexical::try_parse::<i32, _>("5"), Ok(5));
assert_eq!(lexical::try_parse::<i32, _>("1a"), Err(1));
assert_eq!(lexical::try_parse::<f32, _>("0"), Ok(0.0));
assert_eq!(lexical::try_parse::<f32, _>("1.0"), Ok(1.0));
assert_eq!(lexical::try_parse::<f32, _>("1."), Err(1));

// Bytes overloads
assert_eq!(lexical::try_parse::<i32, _>(b"5"), Ok(5));
assert_eq!(lexical::try_parse::<i32, _>(b"1a"), Err(1));
assert_eq!(lexical::try_parse::<f32, _>(b"0"), Ok(0.0));
assert_eq!(lexical::try_parse::<f32, _>(b"1.0"), Ok(1.0));
assert_eq!(lexical::try_parse::<f32, _>(b"1."), Err(1));