rustmax::derive_more::core::prelude::rust_2024

Trait TryFrom

Source
pub trait TryFrom<T>: Sized {
    type Error;

    // Required method
    fn try_from(value: T) -> Result<Self, Self::Error>;
}
๐Ÿ”ฌThis is a nightly-only experimental API. (prelude_2024)
Expand description

Simple and safe type conversions that may fail in a controlled way under some circumstances. It is the reciprocal of TryInto.

This is useful when you are doing a type conversion that may trivially succeed but may also need special handling. For example, there is no way to convert an i64 into an i32 using the From trait, because an i64 may contain a value that an i32 cannot represent and so the conversion would lose data. This might be handled by truncating the i64 to an i32 or by simply returning i32::MAX, or by some other method. The From trait is intended for perfect conversions, so the TryFrom trait informs the programmer when a type conversion could go bad and lets them decide how to handle it.

ยงGeneric Implementations

  • TryFrom<T> for U implies TryInto<U> for T
  • try_from is reflexive, which means that TryFrom<T> for T is implemented and cannot fail โ€“ the associated Error type for calling T::try_from() on a value of type T is Infallible. When the ! type is stabilized Infallible and ! will be equivalent.

TryFrom<T> can be implemented as follows:

struct GreaterThanZero(i32);

impl TryFrom<i32> for GreaterThanZero {
    type Error = &'static str;

    fn try_from(value: i32) -> Result<Self, Self::Error> {
        if value <= 0 {
            Err("GreaterThanZero only accepts values greater than zero!")
        } else {
            Ok(GreaterThanZero(value))
        }
    }
}

ยงExamples

As described, i32 implements TryFrom<i64>:

let big_number = 1_000_000_000_000i64;
// Silently truncates `big_number`, requires detecting
// and handling the truncation after the fact.
let smaller_number = big_number as i32;
assert_eq!(smaller_number, -727379968);

// Returns an error because `big_number` is too big to
// fit in an `i32`.
let try_smaller_number = i32::try_from(big_number);
assert!(try_smaller_number.is_err());

// Returns `Ok(3)`.
let try_successful_smaller_number = i32::try_from(3);
assert!(try_successful_smaller_number.is_ok());

Required Associated Typesยง

1.34.0 ยท Source

type Error

The type returned in the event of a conversion error.

Required Methodsยง

1.34.0 ยท Source

fn try_from(value: T) -> Result<Self, Self::Error>

Performs the conversion.

Dyn Compatibilityยง

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementorsยง

Sourceยง

impl TryFrom<&str> for IpAddr

Sourceยง

impl TryFrom<&str> for Ipv4Addr

Sourceยง

impl TryFrom<&str> for Ipv6Addr

Sourceยง

impl TryFrom<&str> for Alphabet

Sourceยง

impl TryFrom<&str> for rustmax::regex::bytes::Regex

Sourceยง

impl TryFrom<&str> for rustmax::regex::Regex

Sourceยง

impl TryFrom<&BigInt> for i8

Sourceยง

impl TryFrom<&BigInt> for i16

Sourceยง

impl TryFrom<&BigInt> for i32

Sourceยง

impl TryFrom<&BigInt> for i64

Sourceยง

impl TryFrom<&BigInt> for i128

Sourceยง

impl TryFrom<&BigInt> for isize

Sourceยง

impl TryFrom<&BigInt> for u8

Sourceยง

impl TryFrom<&BigInt> for u16

Sourceยง

impl TryFrom<&BigInt> for u32

Sourceยง

impl TryFrom<&BigInt> for u64

Sourceยง

impl TryFrom<&BigInt> for u128

Sourceยง

impl TryFrom<&BigInt> for usize

Sourceยง

impl TryFrom<&BigInt> for BigUint

Sourceยง

impl TryFrom<&BigUint> for i8

Sourceยง

impl TryFrom<&BigUint> for i16

Sourceยง

impl TryFrom<&BigUint> for i32

Sourceยง

impl TryFrom<&BigUint> for i64

Sourceยง

impl TryFrom<&BigUint> for i128

Sourceยง

impl TryFrom<&BigUint> for isize

Sourceยง

impl TryFrom<&BigUint> for u8

Sourceยง

impl TryFrom<&BigUint> for u16

Sourceยง

impl TryFrom<&BigUint> for u32

Sourceยง

impl TryFrom<&BigUint> for u64

Sourceยง

impl TryFrom<&BigUint> for u128

Sourceยง

impl TryFrom<&BigUint> for usize

Sourceยง

impl TryFrom<&String> for PathAndQuery

Sourceยง

impl TryFrom<&[u8]> for SectionKind

Sourceยง

impl TryFrom<&[u8]> for ReasonPhrase

Sourceยง

type Error = InvalidReasonPhrase

1.59.0 ยท Sourceยง

impl TryFrom<char> for u8

Maps a char with code point in U+0000..=U+00FF to a byte in 0x00..=0xFF with same value, failing if the code point is greater than U+00FF.

See impl From<u8> for char for details on the encoding.

1.74.0 ยท Sourceยง

impl TryFrom<char> for u16

Maps a char with code point in U+0000..=U+FFFF to a u16 in 0x0000..=0xFFFF with same value, failing if the code point is greater than U+FFFF.

This corresponds to the UCS-2 encoding, as specified in ISO/IEC 10646:2003.

1.34.0 ยท Sourceยง

impl TryFrom<i8> for u8

1.34.0 ยท Sourceยง

impl TryFrom<i8> for u16

1.34.0 ยท Sourceยง

impl TryFrom<i8> for u32

1.34.0 ยท Sourceยง

impl TryFrom<i8> for u64

1.34.0 ยท Sourceยง

impl TryFrom<i8> for u128

1.34.0 ยท Sourceยง

impl TryFrom<i8> for usize

Sourceยง

impl TryFrom<i8> for PollTimeout

Sourceยง

type Error = PollTimeoutTryFromError

Sourceยง

impl TryFrom<i8> for BigUint

1.46.0 ยท Sourceยง

impl TryFrom<i8> for NonZero<i8>

1.34.0 ยท Sourceยง

impl TryFrom<i16> for i8

1.34.0 ยท Sourceยง

impl TryFrom<i16> for u8

1.34.0 ยท Sourceยง

impl TryFrom<i16> for u16

1.34.0 ยท Sourceยง

impl TryFrom<i16> for u32

1.34.0 ยท Sourceยง

impl TryFrom<i16> for u64

1.34.0 ยท Sourceยง

impl TryFrom<i16> for u128

1.34.0 ยท Sourceยง

impl TryFrom<i16> for usize

Sourceยง

impl TryFrom<i16> for PollTimeout

Sourceยง

type Error = PollTimeoutTryFromError

Sourceยง

impl TryFrom<i16> for BigUint

1.46.0 ยท Sourceยง

impl TryFrom<i16> for NonZero<i16>

Sourceยง

impl TryFrom<i32> for PrctlMCEKillPolicy

Sourceยง

impl TryFrom<i32> for Signal

1.34.0 ยท Sourceยง

impl TryFrom<i32> for i8

1.34.0 ยท Sourceยง

impl TryFrom<i32> for i16

1.34.0 ยท Sourceยง

impl TryFrom<i32> for isize

1.34.0 ยท Sourceยง

impl TryFrom<i32> for u8

1.34.0 ยท Sourceยง

impl TryFrom<i32> for u16

1.34.0 ยท Sourceยง

impl TryFrom<i32> for u32

1.34.0 ยท Sourceยง

impl TryFrom<i32> for u64

1.34.0 ยท Sourceยง

impl TryFrom<i32> for u128

1.34.0 ยท Sourceยง

impl TryFrom<i32> for usize

Sourceยง

impl TryFrom<i32> for PollTimeout

Sourceยง

type Error = PollTimeoutTryFromError

Sourceยง

impl TryFrom<i32> for BigUint

1.46.0 ยท Sourceยง

impl TryFrom<i32> for NonZero<i32>

1.34.0 ยท Sourceยง

impl TryFrom<i64> for i8

1.34.0 ยท Sourceยง

impl TryFrom<i64> for i16

1.34.0 ยท Sourceยง

impl TryFrom<i64> for i32

1.34.0 ยท Sourceยง

impl TryFrom<i64> for isize

1.34.0 ยท Sourceยง

impl TryFrom<i64> for u8

1.34.0 ยท Sourceยง

impl TryFrom<i64> for u16

1.34.0 ยท Sourceยง

impl TryFrom<i64> for u32

1.34.0 ยท Sourceยง

impl TryFrom<i64> for u64

1.34.0 ยท Sourceยง

impl TryFrom<i64> for u128

1.34.0 ยท Sourceยง

impl TryFrom<i64> for usize

Sourceยง

impl TryFrom<i64> for PollTimeout

Sourceยง

type Error = PollTimeoutTryFromError

Sourceยง

impl TryFrom<i64> for BigUint

1.46.0 ยท Sourceยง

impl TryFrom<i64> for NonZero<i64>

1.34.0 ยท Sourceยง

impl TryFrom<i128> for i8

1.34.0 ยท Sourceยง

impl TryFrom<i128> for i16

1.34.0 ยท Sourceยง

impl TryFrom<i128> for i32

1.34.0 ยท Sourceยง

impl TryFrom<i128> for i64

1.34.0 ยท Sourceยง

impl TryFrom<i128> for isize

1.34.0 ยท Sourceยง

impl TryFrom<i128> for u8

1.34.0 ยท Sourceยง

impl TryFrom<i128> for u16

1.34.0 ยท Sourceยง

impl TryFrom<i128> for u32

1.34.0 ยท Sourceยง

impl TryFrom<i128> for u64

1.34.0 ยท Sourceยง

impl TryFrom<i128> for u128

1.34.0 ยท Sourceยง

impl TryFrom<i128> for usize

Sourceยง

impl TryFrom<i128> for PollTimeout

Sourceยง

type Error = PollTimeoutTryFromError

Sourceยง

impl TryFrom<i128> for BigUint

1.46.0 ยท Sourceยง

impl TryFrom<i128> for NonZero<i128>

1.34.0 ยท Sourceยง

impl TryFrom<isize> for i8

1.34.0 ยท Sourceยง

impl TryFrom<isize> for i16

1.34.0 ยท Sourceยง

impl TryFrom<isize> for i32

1.34.0 ยท Sourceยง

impl TryFrom<isize> for i64

1.34.0 ยท Sourceยง

impl TryFrom<isize> for i128

1.34.0 ยท Sourceยง

impl TryFrom<isize> for u8

1.34.0 ยท Sourceยง

impl TryFrom<isize> for u16

1.34.0 ยท Sourceยง

impl TryFrom<isize> for u32

1.34.0 ยท Sourceยง

impl TryFrom<isize> for u64

1.34.0 ยท Sourceยง

impl TryFrom<isize> for u128

1.34.0 ยท Sourceยง

impl TryFrom<isize> for usize

Sourceยง

impl TryFrom<isize> for BigUint

1.46.0 ยท Sourceยง

impl TryFrom<isize> for NonZero<isize>

Sourceยง

impl TryFrom<u8> for Action

Sourceยง

impl TryFrom<u8> for State

Sourceยง

impl TryFrom<u8> for TrieType

Sourceยง

impl TryFrom<u8> for GeneralCategory

Sourceยง

type Error = GeneralCategoryTryFromError

Sourceยง

impl TryFrom<u8> for Month

Sourceยง

impl TryFrom<u8> for Weekday

Any weekday can be represented as an integer from 0 to 6, which equals to Weekday::num_days_from_monday in this implementation. Do not heavily depend on this though; use explicit methods whenever possible.

1.34.0 ยท Sourceยง

impl TryFrom<u8> for i8

1.46.0 ยท Sourceยง

impl TryFrom<u8> for NonZero<u8>

1.34.0 ยท Sourceยง

impl TryFrom<u16> for i8

1.34.0 ยท Sourceยง

impl TryFrom<u16> for i16

1.34.0 ยท Sourceยง

impl TryFrom<u16> for isize

1.34.0 ยท Sourceยง

impl TryFrom<u16> for u8

Sourceยง

impl TryFrom<u16> for aho_corasick::util::primitives::PatternID

Sourceยง

impl TryFrom<u16> for aho_corasick::util::primitives::StateID

Sourceยง

impl TryFrom<u16> for regex_automata::util::primitives::PatternID

Sourceยง

impl TryFrom<u16> for SmallIndex

Sourceยง

impl TryFrom<u16> for regex_automata::util::primitives::StateID

Sourceยง

impl TryFrom<u16> for StatusCode

1.46.0 ยท Sourceยง

impl TryFrom<u16> for NonZero<u16>

Sourceยง

impl TryFrom<u32> for BaudRate

1.34.0 ยท Sourceยง

impl TryFrom<u32> for char

1.34.0 ยท Sourceยง

impl TryFrom<u32> for i8

1.34.0 ยท Sourceยง

impl TryFrom<u32> for i16

1.34.0 ยท Sourceยง

impl TryFrom<u32> for i32

1.34.0 ยท Sourceยง

impl TryFrom<u32> for isize

1.34.0 ยท Sourceยง

impl TryFrom<u32> for u8

1.34.0 ยท Sourceยง

impl TryFrom<u32> for u16

1.34.0 ยท Sourceยง

impl TryFrom<u32> for usize

Sourceยง

impl TryFrom<u32> for aho_corasick::util::primitives::PatternID

Sourceยง

impl TryFrom<u32> for aho_corasick::util::primitives::StateID

Sourceยง

impl TryFrom<u32> for PollTimeout

Sourceยง

type Error = PollTimeoutTryFromError

Sourceยง

impl TryFrom<u32> for regex_automata::util::primitives::PatternID

Sourceยง

impl TryFrom<u32> for SmallIndex

Sourceยง

impl TryFrom<u32> for regex_automata::util::primitives::StateID

1.46.0 ยท Sourceยง

impl TryFrom<u32> for NonZero<u32>

1.34.0 ยท Sourceยง

impl TryFrom<u64> for i8

1.34.0 ยท Sourceยง

impl TryFrom<u64> for i16

1.34.0 ยท Sourceยง

impl TryFrom<u64> for i32

1.34.0 ยท Sourceยง

impl TryFrom<u64> for i64

1.34.0 ยท Sourceยง

impl TryFrom<u64> for isize

1.34.0 ยท Sourceยง

impl TryFrom<u64> for u8

1.34.0 ยท Sourceยง

impl TryFrom<u64> for u16

1.34.0 ยท Sourceยง

impl TryFrom<u64> for u32

1.34.0 ยท Sourceยง

impl TryFrom<u64> for usize

Sourceยง

impl TryFrom<u64> for aho_corasick::util::primitives::PatternID

Sourceยง

impl TryFrom<u64> for aho_corasick::util::primitives::StateID

Sourceยง

impl TryFrom<u64> for PollTimeout

Sourceยง

type Error = PollTimeoutTryFromError

Sourceยง

impl TryFrom<u64> for regex_automata::util::primitives::PatternID

Sourceยง

impl TryFrom<u64> for SmallIndex

Sourceยง

impl TryFrom<u64> for regex_automata::util::primitives::StateID

1.46.0 ยท Sourceยง

impl TryFrom<u64> for NonZero<u64>

1.34.0 ยท Sourceยง

impl TryFrom<u128> for i8

1.34.0 ยท Sourceยง

impl TryFrom<u128> for i16

1.34.0 ยท Sourceยง

impl TryFrom<u128> for i32

1.34.0 ยท Sourceยง

impl TryFrom<u128> for i64

1.34.0 ยท Sourceยง

impl TryFrom<u128> for i128

1.34.0 ยท Sourceยง

impl TryFrom<u128> for isize

1.34.0 ยท Sourceยง

impl TryFrom<u128> for u8

1.34.0 ยท Sourceยง

impl TryFrom<u128> for u16

1.34.0 ยท Sourceยง

impl TryFrom<u128> for u32

1.34.0 ยท Sourceยง

impl TryFrom<u128> for u64

1.34.0 ยท Sourceยง

impl TryFrom<u128> for usize

Sourceยง

impl TryFrom<u128> for PollTimeout

Sourceยง

type Error = PollTimeoutTryFromError

1.46.0 ยท Sourceยง

impl TryFrom<u128> for NonZero<u128>

1.34.0 ยท Sourceยง

impl TryFrom<usize> for i8

1.34.0 ยท Sourceยง

impl TryFrom<usize> for i16

1.34.0 ยท Sourceยง

impl TryFrom<usize> for i32

1.34.0 ยท Sourceยง

impl TryFrom<usize> for i64

1.34.0 ยท Sourceยง

impl TryFrom<usize> for i128

1.34.0 ยท Sourceยง

impl TryFrom<usize> for isize

1.34.0 ยท Sourceยง

impl TryFrom<usize> for u8

1.34.0 ยท Sourceยง

impl TryFrom<usize> for u16

1.34.0 ยท Sourceยง

impl TryFrom<usize> for u32

1.34.0 ยท Sourceยง

impl TryFrom<usize> for u64

1.34.0 ยท Sourceยง

impl TryFrom<usize> for u128

Sourceยง

impl TryFrom<usize> for aho_corasick::util::primitives::PatternID

Sourceยง

impl TryFrom<usize> for aho_corasick::util::primitives::StateID

Sourceยง

impl TryFrom<usize> for regex_automata::util::primitives::PatternID

Sourceยง

impl TryFrom<usize> for SmallIndex

Sourceยง

impl TryFrom<usize> for regex_automata::util::primitives::StateID

1.46.0 ยท Sourceยง

impl TryFrom<usize> for NonZero<usize>

Sourceยง

impl TryFrom<usize> for Alignment

Sourceยง

impl TryFrom<BString> for String

Sourceยง

impl TryFrom<DataResponse<AnyMarker>> for AnyResponse

Sourceยง

impl TryFrom<PollTimeout> for i8

Sourceยง

impl TryFrom<PollTimeout> for i16

Sourceยง

impl TryFrom<PollTimeout> for u8

Sourceยง

impl TryFrom<PollTimeout> for u16

Sourceยง

impl TryFrom<PollTimeout> for u32

Sourceยง

impl TryFrom<PollTimeout> for u64

Sourceยง

impl TryFrom<PollTimeout> for u128

Sourceยง

impl TryFrom<PollTimeout> for Duration

Sourceยง

impl TryFrom<UnvalidatedChar> for char

Sourceยง

impl TryFrom<Bytes> for ReasonPhrase

Sourceยง

type Error = InvalidReasonPhrase

Sourceยง

impl TryFrom<Parts> for Uri

Sourceยง

impl TryFrom<SignedDuration> for Span

Converts a SignedDuration to a Span.

The span returned from this conversion will only ever have non-zero units of seconds or smaller.

ยงErrors

This only fails when the given SignedDuration overflows the maximum number of seconds representable by a Span.

ยงExample

This shows a basic conversion:

use jiff::{SignedDuration, Span, ToSpan};

let duration = SignedDuration::new(86_400, 123_456_789);
let span = Span::try_from(duration)?;
// A duration-to-span conversion always results in a span with
// non-zero units no bigger than seconds.
assert_eq!(
    span.fieldwise(),
    86_400.seconds().milliseconds(123).microseconds(456).nanoseconds(789),
);

ยงExample: rounding

This example shows how to convert a SignedDuration to a Span, and then round it up to bigger units given a relative date:

use jiff::{civil::date, SignedDuration, Span, SpanRound, ToSpan, Unit};

let duration = SignedDuration::new(450 * 86_401, 0);
let span = Span::try_from(duration)?;
// We get back a simple span of just seconds:
assert_eq!(span.fieldwise(), Span::new().seconds(450 * 86_401));
// But we can balance it up to bigger units:
let options = SpanRound::new()
    .largest(Unit::Year)
    .relative(date(2024, 1, 1));
assert_eq!(
    span.round(options)?,
    1.year().months(2).days(25).minutes(7).seconds(30).fieldwise(),
);
Sourceยง

impl TryFrom<SignedDuration> for Offset

Converts a SignedDuration to a time zone offset.

If the signed duration has fractional seconds, then it is automatically rounded to the nearest second. (Because an Offset has only second precision.)

ยงErrors

This returns an error if the duration overflows the limits of an Offset.

ยงExample

use jiff::{tz::{self, Offset}, SignedDuration};

let sdur = SignedDuration::from_secs(-5 * 60 * 60);
let offset = Offset::try_from(sdur)?;
assert_eq!(offset, tz::offset(-5));

// Sub-seconds results in rounded.
let sdur = SignedDuration::new(-5 * 60 * 60, -500_000_000);
let offset = Offset::try_from(sdur)?;
assert_eq!(offset, tz::Offset::from_seconds(-(5 * 60 * 60 + 1)).unwrap());
Sourceยง

impl TryFrom<SignedDuration> for Duration

Sourceยง

impl TryFrom<Span> for SignedDuration

Converts a Span to a SignedDuration.

Note that this assumes that days are always 24 hours long.

ยงErrors

This can fail for only when the span has any non-zero units greater than hours. This is an error because itโ€™s impossible to determine the length of, e.g., a month without a reference date.

This can never result in overflow because a SignedDuration can represent a bigger span of time than Span when limited to units of hours or lower.

If you need to convert a Span to a SignedDuration that has non-zero units bigger than hours, then please use Span::to_duration with a corresponding relative date.

ยงExample: maximal span

This example shows the maximum possible span using units of hours or smaller, and the corresponding SignedDuration value:

use jiff::{SignedDuration, Span};

let sp = Span::new()
    .hours(175_307_616)
    .minutes(10_518_456_960i64)
    .seconds(631_107_417_600i64)
    .milliseconds(631_107_417_600_000i64)
    .microseconds(631_107_417_600_000_000i64)
    .nanoseconds(9_223_372_036_854_775_807i64);
let duration = SignedDuration::try_from(sp)?;
assert_eq!(duration, SignedDuration::new(3_164_760_460_036, 854_775_807));
Sourceยง

impl TryFrom<Span> for Duration

Converts a Span to a std::time::Duration.

Note that this assumes that days are always 24 hours long.

ยงErrors

This can fail for only two reasons:

  • The span is negative. This is an error because a std::time::Duration is unsigned.)
  • The span has any non-zero units greater than hours. This is an error because itโ€™s impossible to determine the length of, e.g., a month without a reference date.

This can never result in overflow because a Duration can represent a bigger span of time than Span when limited to units of hours or lower.

If you need to convert a Span to a Duration that has non-zero units bigger than hours, then please use Span::to_duration with a corresponding relative date.

ยงExample: maximal span

This example shows the maximum possible span using units of hours or smaller, and the corresponding Duration value:

use std::time::Duration;

use jiff::Span;

let sp = Span::new()
    .hours(175_307_616)
    .minutes(10_518_456_960i64)
    .seconds(631_107_417_600i64)
    .milliseconds(631_107_417_600_000i64)
    .microseconds(631_107_417_600_000_000i64)
    .nanoseconds(9_223_372_036_854_775_807i64);
let duration = Duration::try_from(sp)?;
assert_eq!(duration, Duration::new(3_164_760_460_036, 854_775_807));

ยงExample: converting a negative span

Since a Span is signed and a Duration is unsigned, converting a negative Span to Duration will always fail. One can use Span::signum to get the sign of the span and Span::abs to make the span positive before converting it to a Duration:

use std::time::Duration;

use jiff::{Span, ToSpan};

let span = -86_400.seconds().nanoseconds(1);
let (sign, duration) = (span.signum(), Duration::try_from(span.abs())?);
assert_eq!((sign, duration), (-1, Duration::new(86_400, 1)));
Sourceยง

impl TryFrom<BigInt> for i8

Sourceยง

impl TryFrom<BigInt> for i16

Sourceยง

impl TryFrom<BigInt> for i32

Sourceยง

impl TryFrom<BigInt> for i64

Sourceยง

impl TryFrom<BigInt> for i128

Sourceยง

impl TryFrom<BigInt> for isize

Sourceยง

impl TryFrom<BigInt> for u8

Sourceยง

impl TryFrom<BigInt> for u16

Sourceยง

impl TryFrom<BigInt> for u32

Sourceยง

impl TryFrom<BigInt> for u64

Sourceยง

impl TryFrom<BigInt> for u128

Sourceยง

impl TryFrom<BigInt> for usize

Sourceยง

impl TryFrom<BigInt> for BigUint

Sourceยง

impl TryFrom<BigUint> for i8

Sourceยง

impl TryFrom<BigUint> for i16

Sourceยง

impl TryFrom<BigUint> for i32

Sourceยง

impl TryFrom<BigUint> for i64

Sourceยง

impl TryFrom<BigUint> for i128

Sourceยง

impl TryFrom<BigUint> for isize

Sourceยง

impl TryFrom<BigUint> for u8

Sourceยง

impl TryFrom<BigUint> for u16

Sourceยง

impl TryFrom<BigUint> for u32

Sourceยง

impl TryFrom<BigUint> for u64

Sourceยง

impl TryFrom<BigUint> for u128

Sourceยง

impl TryFrom<BigUint> for usize

Sourceยง

impl TryFrom<Method> for MethodFilter

Sourceยง

type Error = NoMatchingMethodFilter

Sourceยง

impl TryFrom<Request> for rustmax::hyper::Request<Body>

Sourceยง

impl TryFrom<CString> for String

Sourceยง

impl TryFrom<Error> for Errno

Sourceยง

impl TryFrom<TcpListener> for TcpListener

Sourceยง

impl TryFrom<TcpStream> for TcpStream

Sourceยง

impl TryFrom<UdpSocket> for UdpSocket

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i8>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i8>> for NonZero<u16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i8>> for NonZero<u32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i8>> for NonZero<u64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i8>> for NonZero<u128>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i8>> for NonZero<usize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i16>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i16>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i16>> for NonZero<u16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i16>> for NonZero<u32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i16>> for NonZero<u64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i16>> for NonZero<u128>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i16>> for NonZero<usize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i32>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i32>> for NonZero<i16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i32>> for NonZero<isize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i32>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i32>> for NonZero<u16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i32>> for NonZero<u32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i32>> for NonZero<u64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i32>> for NonZero<u128>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i32>> for NonZero<usize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i64>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i64>> for NonZero<i16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i64>> for NonZero<i32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i64>> for NonZero<isize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i64>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i64>> for NonZero<u16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i64>> for NonZero<u32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i64>> for NonZero<u64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i64>> for NonZero<u128>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i64>> for NonZero<usize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<i16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<i32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<i64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<isize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<u16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<u32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<u64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<u128>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<i128>> for NonZero<usize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<i16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<i32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<i64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<i128>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<u16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<u32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<u64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<u128>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<isize>> for NonZero<usize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u8>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u16>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u16>> for NonZero<i16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u16>> for NonZero<isize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u16>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u32>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u32>> for NonZero<i16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u32>> for NonZero<i32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u32>> for NonZero<isize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u32>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u32>> for NonZero<u16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u32>> for NonZero<usize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u64>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u64>> for NonZero<i16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u64>> for NonZero<i32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u64>> for NonZero<i64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u64>> for NonZero<isize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u64>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u64>> for NonZero<u16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u64>> for NonZero<u32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u64>> for NonZero<usize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<i16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<i32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<i64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<i128>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<isize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<u16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<u32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<u64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<u128>> for NonZero<usize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<i8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<i16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<i32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<i64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<i128>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<isize>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<u8>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<u16>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<u32>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<u64>

1.49.0 ยท Sourceยง

impl TryFrom<NonZero<usize>> for NonZero<u128>

Sourceยง

impl TryFrom<NonZero<usize>> for Alignment

Sourceยง

impl TryFrom<UnixDatagram> for UnixDatagram

Sourceยง

impl TryFrom<UnixListener> for UnixListener

Sourceยง

impl TryFrom<UnixStream> for UnixStream

Sourceยง

impl TryFrom<String> for ServerName<'static>

Sourceยง

impl TryFrom<String> for DnsName<'static>

Sourceยง

impl TryFrom<String> for ReasonPhrase

Sourceยง

type Error = InvalidReasonPhrase

Sourceยง

impl TryFrom<String> for Authority

Sourceยง

impl TryFrom<String> for PathAndQuery

Sourceยง

impl TryFrom<String> for Uri

Sourceยง

impl TryFrom<String> for rustmax::regex::bytes::Regex

Sourceยง

impl TryFrom<String> for rustmax::regex::Regex

Sourceยง

impl TryFrom<String> for HeaderName

Sourceยง

impl TryFrom<String> for HeaderValue

Sourceยง

impl TryFrom<Duration> for PollTimeout

Sourceยง

type Error = PollTimeoutTryFromError

Sourceยง

impl TryFrom<Duration> for SignedDuration

Sourceยง

impl TryFrom<Duration> for Span

Converts a std::time::Duration to a Span.

The span returned from this conversion will only ever have non-zero units of seconds or smaller.

ยงErrors

This only fails when the given Duration overflows the maximum number of seconds representable by a Span.

ยงExample

This shows a basic conversion:

use std::time::Duration;

use jiff::{Span, ToSpan};

let duration = Duration::new(86_400, 123_456_789);
let span = Span::try_from(duration)?;
// A duration-to-span conversion always results in a span with
// non-zero units no bigger than seconds.
assert_eq!(
    span.fieldwise(),
    86_400.seconds().milliseconds(123).microseconds(456).nanoseconds(789),
);

ยงExample: rounding

This example shows how to convert a Duration to a Span, and then round it up to bigger units given a relative date:

use std::time::Duration;

use jiff::{civil::date, Span, SpanRound, ToSpan, Unit};

let duration = Duration::new(450 * 86_401, 0);
let span = Span::try_from(duration)?;
// We get back a simple span of just seconds:
assert_eq!(span.fieldwise(), Span::new().seconds(450 * 86_401));
// But we can balance it up to bigger units:
let options = SpanRound::new()
    .largest(Unit::Year)
    .relative(date(2024, 1, 1));
assert_eq!(
    span.round(options)?,
    1.year().months(2).days(25).minutes(7).seconds(30).fieldwise(),
);
Sourceยง

impl TryFrom<SystemTime> for Timestamp

Sourceยง

impl TryFrom<SystemTime> for Zoned

Sourceยง

impl TryFrom<Vec<u8>> for PrivateKeyDer<'_>

Sourceยง

type Error = &'static str

Sourceยง

impl TryFrom<Vec<u8>> for ReasonPhrase

Sourceยง

type Error = InvalidReasonPhrase

Sourceยง

impl TryFrom<Vec<u8>> for Authority

Sourceยง

impl TryFrom<Vec<u8>> for PathAndQuery

Sourceยง

impl TryFrom<Vec<u8>> for Uri

Sourceยง

impl TryFrom<Vec<u8>> for HeaderName

Sourceยง

impl TryFrom<Vec<u8>> for HeaderValue

Sourceยง

impl<'a> TryFrom<&'a str> for ServerName<'a>

Attempt to make a ServerName from a string by parsing as a DNS name or IP address.

Sourceยง

impl<'a> TryFrom<&'a str> for DnsName<'a>

Sourceยง

impl<'a> TryFrom<&'a str> for Authority

Sourceยง

impl<'a> TryFrom<&'a str> for PathAndQuery

Sourceยง

impl<'a> TryFrom<&'a str> for Scheme

Sourceยง

impl<'a> TryFrom<&'a str> for Uri

Sourceยง

impl<'a> TryFrom<&'a str> for HeaderName

Sourceยง

impl<'a> TryFrom<&'a str> for HeaderValue

Sourceยง

impl<'a> TryFrom<&'a str> for Method

Sourceยง

impl<'a> TryFrom<&'a str> for StatusCode

Sourceยง

impl<'a> TryFrom<&'a str> for Url

Sourceยง

impl<'a> TryFrom<&'a BStr> for &'a str

Sourceยง

impl<'a> TryFrom<&'a BStr> for String

Sourceยง

impl<'a> TryFrom<&'a BString> for &'a str

Sourceยง

impl<'a> TryFrom<&'a Uri> for Uri

1.72.0 ยท Sourceยง

impl<'a> TryFrom<&'a OsStr> for &'a str

Sourceยง

impl<'a> TryFrom<&'a String> for Uri

Sourceยง

impl<'a> TryFrom<&'a String> for HeaderName

Sourceยง

impl<'a> TryFrom<&'a String> for HeaderValue

Sourceยง

impl<'a> TryFrom<&'a [u8]> for PrivateKeyDer<'a>

Sourceยง

type Error = &'static str

Sourceยง

impl<'a> TryFrom<&'a [u8]> for ServerName<'a>

Sourceยง

impl<'a> TryFrom<&'a [u8]> for DnsName<'a>

Sourceยง

impl<'a> TryFrom<&'a [u8]> for Authority

Sourceยง

impl<'a> TryFrom<&'a [u8]> for PathAndQuery

Sourceยง

impl<'a> TryFrom<&'a [u8]> for Scheme

Sourceยง

impl<'a> TryFrom<&'a [u8]> for Uri

Sourceยง

impl<'a> TryFrom<&'a [u8]> for HeaderName

Sourceยง

impl<'a> TryFrom<&'a [u8]> for HeaderValue

Sourceยง

impl<'a> TryFrom<&'a [u8]> for Method

Sourceยง

impl<'a> TryFrom<&'a [u8]> for StatusCode

Sourceยง

impl<'a, K, V, S, T> TryFrom<&'a HashMap<K, V, S>> for HeaderMap<T>

Try to convert a HashMap into a HeaderMap.

ยงExamples

use std::collections::HashMap;
use std::convert::TryInto;
use http::HeaderMap;

let mut map = HashMap::new();
map.insert("X-Custom-Header".to_string(), "my value".to_string());

let headers: HeaderMap = (&map).try_into().expect("valid headers");
assert_eq!(headers["X-Custom-Header"], "my value");
1.34.0 ยท Sourceยง

impl<'a, T, const N: usize> TryFrom<&'a [T]> for &'a [T; N]

Tries to create an array ref &[T; N] from a slice ref &[T]. Succeeds if slice.len() == N.

let bytes: [u8; 3] = [1, 0, 2];

let bytes_head: &[u8; 2] = <&[u8; 2]>::try_from(&bytes[0..2]).unwrap();
assert_eq!(1, u16::from_le_bytes(*bytes_head));

let bytes_tail: &[u8; 2] = bytes[1..3].try_into().unwrap();
assert_eq!(512, u16::from_le_bytes(*bytes_tail));
1.34.0 ยท Sourceยง

impl<'a, T, const N: usize> TryFrom<&'a mut [T]> for &'a mut [T; N]

Tries to create a mutable array ref &mut [T; N] from a mutable slice ref &mut [T]. Succeeds if slice.len() == N.

let mut bytes: [u8; 3] = [1, 0, 2];

let bytes_head: &mut [u8; 2] = <&mut [u8; 2]>::try_from(&mut bytes[0..2]).unwrap();
assert_eq!(1, u16::from_le_bytes(*bytes_head));

let bytes_tail: &mut [u8; 2] = (&mut bytes[1..3]).try_into().unwrap();
assert_eq!(512, u16::from_le_bytes(*bytes_tail));
Sourceยง

impl<'a, const CAP: usize> TryFrom<&'a str> for ArrayString<CAP>

Sourceยง

impl<'a, const CAP: usize> TryFrom<Arguments<'a>> for ArrayString<CAP>

Sourceยง

impl<'data> TryFrom<&Range<char>> for CodePointInversionList<'data>

Sourceยง

impl<'data> TryFrom<&RangeFrom<char>> for CodePointInversionList<'data>

Sourceยง

impl<'data> TryFrom<&RangeFull> for CodePointInversionList<'data>

Sourceยง

impl<'data> TryFrom<&RangeInclusive<char>> for CodePointInversionList<'data>

Sourceยง

impl<'data> TryFrom<&RangeTo<char>> for CodePointInversionList<'data>

Sourceยง

impl<'data> TryFrom<&RangeToInclusive<char>> for CodePointInversionList<'data>

Sourceยง

impl<'data> TryFrom<AliasesV1<'data>> for AliasesV2<'data>

Sourceยง

impl<M> TryFrom<DataResponse<M>> for DataPayload<M>
where M: DataMarker,

Sourceยง

impl<O> TryFrom<i32> for zerocopy::byteorder::I16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i32> for zerocopy::byteorder::I16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i64> for zerocopy::byteorder::I16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i64> for zerocopy::byteorder::I16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i64> for zerocopy::byteorder::I32<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i64> for zerocopy::byteorder::I32<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i128> for zerocopy::byteorder::I16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i128> for zerocopy::byteorder::I16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i128> for zerocopy::byteorder::I32<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i128> for zerocopy::byteorder::I32<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i128> for zerocopy::byteorder::I64<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<i128> for zerocopy::byteorder::I64<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<isize> for zerocopy::byteorder::I16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<isize> for zerocopy::byteorder::I16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u32> for zerocopy::byteorder::U16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u32> for zerocopy::byteorder::U16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u64> for zerocopy::byteorder::U16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u64> for zerocopy::byteorder::U16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u64> for zerocopy::byteorder::U32<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u64> for zerocopy::byteorder::U32<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u128> for zerocopy::byteorder::U16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u128> for zerocopy::byteorder::U16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u128> for zerocopy::byteorder::U32<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u128> for zerocopy::byteorder::U32<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u128> for zerocopy::byteorder::U64<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<u128> for zerocopy::byteorder::U64<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<usize> for zerocopy::byteorder::U16<O>
where O: ByteOrder,

Sourceยง

impl<O> TryFrom<usize> for zerocopy::byteorder::U16<O>
where O: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I32<P>> for zerocopy::byteorder::I16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I32<P>> for zerocopy::byteorder::I16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I64<P>> for zerocopy::byteorder::I16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I64<P>> for zerocopy::byteorder::I16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I64<P>> for zerocopy::byteorder::I32<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I64<P>> for zerocopy::byteorder::I32<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I128<P>> for zerocopy::byteorder::I16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I128<P>> for zerocopy::byteorder::I16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I128<P>> for zerocopy::byteorder::I32<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I128<P>> for zerocopy::byteorder::I32<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I128<P>> for zerocopy::byteorder::I64<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<I128<P>> for zerocopy::byteorder::I64<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<Isize<P>> for zerocopy::byteorder::I16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U32<P>> for zerocopy::byteorder::U16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U32<P>> for zerocopy::byteorder::U16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U64<P>> for zerocopy::byteorder::U16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U64<P>> for zerocopy::byteorder::U16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U64<P>> for zerocopy::byteorder::U32<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U64<P>> for zerocopy::byteorder::U32<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U128<P>> for zerocopy::byteorder::U16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U128<P>> for zerocopy::byteorder::U16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U128<P>> for zerocopy::byteorder::U32<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U128<P>> for zerocopy::byteorder::U32<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U128<P>> for zerocopy::byteorder::U64<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<U128<P>> for zerocopy::byteorder::U64<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<O, P> TryFrom<Usize<P>> for zerocopy::byteorder::U16<O>
where O: ByteOrder, P: ByteOrder,

Sourceยง

impl<T> TryFrom<Dh<T>> for PKey<T>

Sourceยง

impl<T> TryFrom<Dsa<T>> for PKey<T>

Sourceยง

impl<T> TryFrom<EcKey<T>> for PKey<T>

Sourceยง

impl<T> TryFrom<PKey<T>> for Dh<T>

Sourceยง

impl<T> TryFrom<PKey<T>> for Dsa<T>

Sourceยง

impl<T> TryFrom<PKey<T>> for EcKey<T>

Sourceยง

impl<T> TryFrom<PKey<T>> for Rsa<T>

Sourceยง

impl<T> TryFrom<Rsa<T>> for PKey<T>

Sourceยง

impl<T> TryFrom<Request<T>> for rustmax::reqwest::blocking::Request
where T: Into<Body>,

Sourceยง

impl<T> TryFrom<Request<T>> for rustmax::reqwest::Request
where T: Into<Body>,

1.43.0 ยท Sourceยง

impl<T, A, const N: usize> TryFrom<Rc<[T], A>> for Rc<[T; N], A>
where A: Allocator,

1.43.0 ยท Sourceยง

impl<T, A, const N: usize> TryFrom<Arc<[T], A>> for Arc<[T; N], A>
where A: Allocator,

1.48.0 ยท Sourceยง

impl<T, A, const N: usize> TryFrom<Vec<T, A>> for [T; N]
where A: Allocator,

Sourceยง

type Error = Vec<T, A>

1.34.0 ยท Sourceยง

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Sourceยง

impl<T, const CAP: usize> TryFrom<&[T]> for ArrayVec<T, CAP>
where T: Clone,

Try to create an ArrayVec from a slice. This will return an error if the slice was too big to fit.

use arrayvec::ArrayVec;
use std::convert::TryInto as _;

let array: ArrayVec<_, 4> = (&[1, 2, 3] as &[_]).try_into().unwrap();
assert_eq!(array.len(), 3);
assert_eq!(array.capacity(), 4);
1.34.0 ยท Sourceยง

impl<T, const N: usize> TryFrom<&[T]> for [T; N]
where T: Copy,

Tries to create an array [T; N] by copying from a slice &[T]. Succeeds if slice.len() == N.

let bytes: [u8; 3] = [1, 0, 2];

let bytes_head: [u8; 2] = <[u8; 2]>::try_from(&bytes[0..2]).unwrap();
assert_eq!(1, u16::from_le_bytes(bytes_head));

let bytes_tail: [u8; 2] = bytes[1..3].try_into().unwrap();
assert_eq!(512, u16::from_le_bytes(bytes_tail));
Sourceยง

impl<T, const N: usize> TryFrom<&[T]> for Simd<T, N>

1.59.0 ยท Sourceยง

impl<T, const N: usize> TryFrom<&mut [T]> for [T; N]
where T: Copy,

Tries to create an array [T; N] by copying from a mutable slice &mut [T]. Succeeds if slice.len() == N.

let mut bytes: [u8; 3] = [1, 0, 2];

let bytes_head: [u8; 2] = <[u8; 2]>::try_from(&mut bytes[0..2]).unwrap();
assert_eq!(1, u16::from_le_bytes(bytes_head));

let bytes_tail: [u8; 2] = (&mut bytes[1..3]).try_into().unwrap();
assert_eq!(512, u16::from_le_bytes(bytes_tail));
Sourceยง

impl<T, const N: usize> TryFrom<&mut [T]> for Simd<T, N>

1.43.0 ยท Sourceยง

impl<T, const N: usize> TryFrom<Box<[T]>> for Box<[T; N]>

1.66.0 ยท Sourceยง

impl<T, const N: usize> TryFrom<Vec<T>> for Box<[T; N]>

Sourceยง

impl<X> TryFrom<Range<X>> for Uniform<X>
where X: SampleUniform,

Sourceยง

impl<X> TryFrom<RangeInclusive<X>> for Uniform<X>
where X: SampleUniform,