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

    fn try_from(value: T) -> Result<Self, Self::Error>;
}
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 (essentially giving the i64’s value modulo i32::MAX) 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§

source

type Error

The type returned in the event of a conversion error.

Required Methods§

source

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

Performs the conversion.

Implementors§

source§

impl TryFrom<&&EntryTypes> for ScopedEntryDefIndex

source§

impl TryFrom<&EntryTypes> for Entry

source§

impl TryFrom<&EntryTypes> for EntryType

source§

impl TryFrom<&EntryTypes> for AppEntryBytes

source§

impl TryFrom<&EntryTypes> for ScopedEntryDefIndex

source§

impl TryFrom<&UnitEntryTypes> for ScopedEntryDefIndex

source§

impl TryFrom<&SomeLinkTypes> for LinkTypeFilter

source§

impl TryFrom<&SomeLinkTypes> for ScopedLinkType

source§

impl TryFrom<&Action> for SerializedBytes

source§

impl TryFrom<&ActionType> for SerializedBytes

source§

impl TryFrom<&Entry> for Msg

source§

impl TryFrom<&Entry> for Post

source§

impl TryFrom<&Entry> for PrivMsg

source§

impl TryFrom<&Entry> for SerializedBytes

source§

impl TryFrom<&EntryCreationAction> for SerializedBytes

source§

impl TryFrom<&EntryDefsCallbackResult> for SerializedBytes

source§

impl TryFrom<&EntryType> for SerializedBytes

source§

impl TryFrom<&EntryVisibility> for SerializedBytes

source§

impl TryFrom<&Op> for SerializedBytes

source§

impl TryFrom<&RecordEntry> for SerializedBytes

source§

impl TryFrom<&ValidateCallbackResult> for SerializedBytes

source§

impl TryFrom<&WeighInput> for SerializedBytes

source§

impl TryFrom<&AnyDht> for SerializedBytes

source§

impl TryFrom<&AnyLinkable> for SerializedBytes

§

impl TryFrom<&()> for SerializedBytes

source§

impl TryFrom<&Msg> for Entry

source§

impl TryFrom<&Msg> for AppEntryBytes

source§

impl TryFrom<&Msg> for SerializedBytes

source§

impl TryFrom<&Post> for Entry

source§

impl TryFrom<&Post> for AppEntryBytes

source§

impl TryFrom<&Post> for SerializedBytes

source§

impl TryFrom<&PrivMsg> for Entry

source§

impl TryFrom<&PrivMsg> for AppEntryBytes

source§

impl TryFrom<&PrivMsg> for SerializedBytes

source§

impl TryFrom<&XSalsa20Poly1305Nonce> for SerializedBytes

source§

impl TryFrom<&AgentValidationPkg> for SerializedBytes

source§

impl TryFrom<&AppEntryDef> for SerializedBytes

source§

impl TryFrom<&CapClaim> for SerializedBytes

source§

impl TryFrom<&CapSecret> for SerializedBytes

source§

impl TryFrom<&ChainFilter<HoloHash<Action>>> for SerializedBytes

source§

impl TryFrom<&CloseChain> for SerializedBytes

source§

impl TryFrom<&Create<EntryRateWeight>> for SerializedBytes

source§

impl TryFrom<&CreateLink<RateWeight>> for SerializedBytes

source§

impl TryFrom<&Delete<RateWeight>> for SerializedBytes

source§

impl TryFrom<&DeleteAction> for SerializedBytes

source§

impl TryFrom<&DeleteLink> for SerializedBytes

source§

impl TryFrom<&Dna> for SerializedBytes

source§

impl TryFrom<&EntryDefIndex> for SerializedBytes

source§

impl TryFrom<&EntryHashes> for SerializedBytes

source§

impl TryFrom<&EntryRateWeight> for SerializedBytes

source§

impl TryFrom<&GenesisSelfCheckData> for SerializedBytes

source§

impl TryFrom<&InitZomesComplete> for SerializedBytes

source§

impl TryFrom<&LinkTag> for SerializedBytes

source§

impl TryFrom<&LinkType> for SerializedBytes

source§

impl TryFrom<&OpenChain> for SerializedBytes

source§

impl TryFrom<&RateWeight> for SerializedBytes

source§

impl TryFrom<&Record<SignedHashed<Action>>> for Msg

source§

impl TryFrom<&Record<SignedHashed<Action>>> for Post

source§

impl TryFrom<&Record<SignedHashed<Action>>> for PrivMsg

source§

impl TryFrom<&Record<SignedHashed<Action>>> for SerializedBytes

source§

impl TryFrom<&RegisterAgentActivity> for SerializedBytes

source§

impl TryFrom<&RegisterCreateLink> for SerializedBytes

source§

impl TryFrom<&RegisterDelete> for SerializedBytes

source§

impl TryFrom<&RegisterDeleteLink> for SerializedBytes

source§

impl TryFrom<&RegisterUpdate> for SerializedBytes

source§

impl TryFrom<&ScopedZomeTypesSet> for SerializedBytes

source§

impl TryFrom<&StoreEntry> for SerializedBytes

source§

impl TryFrom<&StoreRecord> for SerializedBytes

source§

impl TryFrom<&Update<EntryRateWeight>> for SerializedBytes

source§

impl TryFrom<&UpdateAction> for SerializedBytes

source§

impl TryFrom<&VerifySignature> for SerializedBytes

source§

impl TryFrom<&X25519PubKey> for SerializedBytes

source§

impl TryFrom<&X25519XSalsa20Poly1305Decrypt> for SerializedBytes

source§

impl TryFrom<&XSalsa20Poly1305Decrypt> for SerializedBytes

source§

impl TryFrom<&XSalsa20Poly1305KeyRef> for SerializedBytes

source§

impl TryFrom<&ZomeIndex> for SerializedBytes

source§

impl TryFrom<&ZomeInfo> for SerializedBytes

source§

impl TryFrom<&[u8]> for Hash256Bits

source§

impl TryFrom<&[u8]> for Hash512Bits

source§

impl TryFrom<&[u8]> for XSalsa20Poly1305Nonce

source§

impl TryFrom<&[u8]> for CapSecret

source§

impl TryFrom<&[u8]> for Signature

source§

impl TryFrom<&[u8]> for X25519PubKey

source§

impl TryFrom<(UnitEntryTypes, &Entry)> for EntryTypes

source§

impl TryFrom<EntryTypes> for Entry

source§

impl TryFrom<EntryTypes> for EntryType

source§

impl TryFrom<EntryTypes> for AppEntryBytes

source§

impl TryFrom<EntryTypes> for ScopedEntryDefIndex

source§

impl TryFrom<UnitEntryTypes> for EntryType

source§

impl TryFrom<UnitEntryTypes> for AppEntryDef

source§

impl TryFrom<UnitEntryTypes> for ScopedEntryDefIndex

source§

impl TryFrom<SomeLinkTypes> for LinkTypeFilter

source§

impl TryFrom<SomeLinkTypes> for ScopedLinkType

source§

impl TryFrom<Action> for EntryCreationAction

source§

impl TryFrom<Action> for CreateLink<RateWeight>

source§

impl TryFrom<Action> for Delete<RateWeight>

source§

impl TryFrom<Action> for SerializedBytes

source§

impl TryFrom<Action> for Update<EntryRateWeight>

source§

impl TryFrom<ActionType> for SerializedBytes

source§

impl TryFrom<Entry> for Msg

source§

impl TryFrom<Entry> for Post

source§

impl TryFrom<Entry> for PrivMsg

source§

impl TryFrom<Entry> for SerializedBytes

source§

impl TryFrom<EntryCreationAction> for SerializedBytes

source§

impl TryFrom<EntryDefsCallbackResult> for SerializedBytes

source§

impl TryFrom<EntryType> for SerializedBytes

source§

impl TryFrom<EntryVisibility> for SerializedBytes

source§

impl TryFrom<Op> for SerializedBytes

source§

impl TryFrom<RecordEntry> for SerializedBytes

source§

impl TryFrom<ValidateCallbackResult> for SerializedBytes

source§

impl TryFrom<WeighInput> for SerializedBytes

source§

impl TryFrom<AnyDht> for SerializedBytes

source§

impl TryFrom<AnyLinkable> for SerializedBytes

1.59.0 · source§

impl TryFrom<char> for u8

Map char with code point in U+0000..=U+00FF to 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.

const: unstable · source§

impl TryFrom<i8> for u8

const: unstable · source§

impl TryFrom<i8> for u16

const: unstable · source§

impl TryFrom<i8> for u32

const: unstable · source§

impl TryFrom<i8> for u64

const: unstable · source§

impl TryFrom<i8> for u128

const: unstable · source§

impl TryFrom<i8> for usize

1.46.0 · source§

impl TryFrom<i8> for NonZeroI8

const: unstable · source§

impl TryFrom<i16> for i8

const: unstable · source§

impl TryFrom<i16> for u8

const: unstable · source§

impl TryFrom<i16> for u16

const: unstable · source§

impl TryFrom<i16> for u32

const: unstable · source§

impl TryFrom<i16> for u64

const: unstable · source§

impl TryFrom<i16> for u128

const: unstable · source§

impl TryFrom<i16> for usize

1.46.0 · source§

impl TryFrom<i16> for NonZeroI16

const: unstable · source§

impl TryFrom<i32> for i8

const: unstable · source§

impl TryFrom<i32> for i16

const: unstable · source§

impl TryFrom<i32> for isize

const: unstable · source§

impl TryFrom<i32> for u8

const: unstable · source§

impl TryFrom<i32> for u16

const: unstable · source§

impl TryFrom<i32> for u32

const: unstable · source§

impl TryFrom<i32> for u64

const: unstable · source§

impl TryFrom<i32> for u128

const: unstable · source§

impl TryFrom<i32> for usize

1.46.0 · source§

impl TryFrom<i32> for NonZeroI32

const: unstable · source§

impl TryFrom<i64> for i8

const: unstable · source§

impl TryFrom<i64> for i16

const: unstable · source§

impl TryFrom<i64> for i32

const: unstable · source§

impl TryFrom<i64> for isize

const: unstable · source§

impl TryFrom<i64> for u8

const: unstable · source§

impl TryFrom<i64> for u16

const: unstable · source§

impl TryFrom<i64> for u32

const: unstable · source§

impl TryFrom<i64> for u64

const: unstable · source§

impl TryFrom<i64> for u128

const: unstable · source§

impl TryFrom<i64> for usize

1.46.0 · source§

impl TryFrom<i64> for NonZeroI64

const: unstable · source§

impl TryFrom<i128> for i8

const: unstable · source§

impl TryFrom<i128> for i16

const: unstable · source§

impl TryFrom<i128> for i32

const: unstable · source§

impl TryFrom<i128> for i64

const: unstable · source§

impl TryFrom<i128> for isize

const: unstable · source§

impl TryFrom<i128> for u8

const: unstable · source§

impl TryFrom<i128> for u16

const: unstable · source§

impl TryFrom<i128> for u32

const: unstable · source§

impl TryFrom<i128> for u64

const: unstable · source§

impl TryFrom<i128> for u128

const: unstable · source§

impl TryFrom<i128> for usize

1.46.0 · source§

impl TryFrom<i128> for NonZeroI128

const: unstable · source§

impl TryFrom<isize> for i8

const: unstable · source§

impl TryFrom<isize> for i16

const: unstable · source§

impl TryFrom<isize> for i32

const: unstable · source§

impl TryFrom<isize> for i64

const: unstable · source§

impl TryFrom<isize> for i128

const: unstable · source§

impl TryFrom<isize> for u8

const: unstable · source§

impl TryFrom<isize> for u16

const: unstable · source§

impl TryFrom<isize> for u32

const: unstable · source§

impl TryFrom<isize> for u64

const: unstable · source§

impl TryFrom<isize> for u128

const: unstable · source§

impl TryFrom<isize> for usize

1.46.0 · source§

impl TryFrom<isize> for NonZeroIsize

const: unstable · source§

impl TryFrom<u8> for i8

1.46.0 · source§

impl TryFrom<u8> for NonZeroU8

const: unstable · source§

impl TryFrom<u16> for i8

const: unstable · source§

impl TryFrom<u16> for i16

const: unstable · source§

impl TryFrom<u16> for isize

const: unstable · source§

impl TryFrom<u16> for u8

1.46.0 · source§

impl TryFrom<u16> for NonZeroU16

§

impl TryFrom<u16> for Opcode

§

type Error = ()

source§

impl TryFrom<u32> for char

const: unstable · source§

impl TryFrom<u32> for i8

const: unstable · source§

impl TryFrom<u32> for i16

const: unstable · source§

impl TryFrom<u32> for i32

const: unstable · source§

impl TryFrom<u32> for isize

const: unstable · source§

impl TryFrom<u32> for u8

const: unstable · source§

impl TryFrom<u32> for u16

const: unstable · source§

impl TryFrom<u32> for usize

1.46.0 · source§

impl TryFrom<u32> for NonZeroU32

const: unstable · source§

impl TryFrom<u64> for i8

const: unstable · source§

impl TryFrom<u64> for i16

const: unstable · source§

impl TryFrom<u64> for i32

const: unstable · source§

impl TryFrom<u64> for i64

const: unstable · source§

impl TryFrom<u64> for isize

const: unstable · source§

impl TryFrom<u64> for u8

const: unstable · source§

impl TryFrom<u64> for u16

const: unstable · source§

impl TryFrom<u64> for u32

const: unstable · source§

impl TryFrom<u64> for usize

1.46.0 · source§

impl TryFrom<u64> for NonZeroU64

const: unstable · source§

impl TryFrom<u128> for i8

const: unstable · source§

impl TryFrom<u128> for i16

const: unstable · source§

impl TryFrom<u128> for i32

const: unstable · source§

impl TryFrom<u128> for i64

const: unstable · source§

impl TryFrom<u128> for i128

const: unstable · source§

impl TryFrom<u128> for isize

const: unstable · source§

impl TryFrom<u128> for u8

const: unstable · source§

impl TryFrom<u128> for u16

const: unstable · source§

impl TryFrom<u128> for u32

const: unstable · source§

impl TryFrom<u128> for u64

const: unstable · source§

impl TryFrom<u128> for usize

1.46.0 · source§

impl TryFrom<u128> for NonZeroU128

§

impl TryFrom<()> for SerializedBytes

const: unstable · source§

impl TryFrom<usize> for i8

const: unstable · source§

impl TryFrom<usize> for i16

const: unstable · source§

impl TryFrom<usize> for i32

const: unstable · source§

impl TryFrom<usize> for i64

const: unstable · source§

impl TryFrom<usize> for i128

const: unstable · source§

impl TryFrom<usize> for isize

const: unstable · source§

impl TryFrom<usize> for u8

const: unstable · source§

impl TryFrom<usize> for u16

const: unstable · source§

impl TryFrom<usize> for u32

const: unstable · source§

impl TryFrom<usize> for u64

const: unstable · source§

impl TryFrom<usize> for u128

1.46.0 · source§

impl TryFrom<usize> for NonZeroUsize

source§

impl TryFrom<usize> for Alignment

source§

impl TryFrom<Msg> for Entry

source§

impl TryFrom<Msg> for AppEntryBytes

source§

impl TryFrom<Msg> for SerializedBytes

source§

impl TryFrom<Post> for Entry

source§

impl TryFrom<Post> for AppEntryBytes

source§

impl TryFrom<Post> for SerializedBytes

source§

impl TryFrom<PrivMsg> for Entry

source§

impl TryFrom<PrivMsg> for AppEntryBytes

source§

impl TryFrom<PrivMsg> for SerializedBytes

source§

impl TryFrom<XSalsa20Poly1305Nonce> for SerializedBytes

source§

impl TryFrom<AgentValidationPkg> for SerializedBytes

source§

impl TryFrom<AppEntryDef> for SerializedBytes

source§

impl TryFrom<CapClaim> for SerializedBytes

source§

impl TryFrom<CapSecret> for SerializedBytes

source§

impl TryFrom<ChainFilter<HoloHash<Action>>> for SerializedBytes

source§

impl TryFrom<CloseChain> for SerializedBytes

source§

impl TryFrom<Create<EntryRateWeight>> for SerializedBytes

source§

impl TryFrom<CreateLink<RateWeight>> for SerializedBytes

source§

impl TryFrom<Delete<RateWeight>> for SerializedBytes

source§

impl TryFrom<DeleteAction> for SerializedBytes

source§

impl TryFrom<DeleteLink> for SerializedBytes

source§

impl TryFrom<Dna> for SerializedBytes

source§

impl TryFrom<EntryDefIndex> for SerializedBytes

source§

impl TryFrom<EntryHashes> for SerializedBytes

source§

impl TryFrom<EntryRateWeight> for SerializedBytes

source§

impl TryFrom<GenesisSelfCheckData> for SerializedBytes

source§

impl TryFrom<HoloHashed<Entry>> for Msg

source§

impl TryFrom<HoloHashed<Entry>> for Post

source§

impl TryFrom<HoloHashed<Entry>> for PrivMsg

source§

impl TryFrom<InitZomesComplete> for SerializedBytes

source§

impl TryFrom<LinkTag> for SerializedBytes

source§

impl TryFrom<LinkType> for SerializedBytes

source§

impl TryFrom<OpenChain> for SerializedBytes

source§

impl TryFrom<RateWeight> for SerializedBytes

source§

impl TryFrom<Record<SignedHashed<Action>>> for Msg

source§

impl TryFrom<Record<SignedHashed<Action>>> for Post

source§

impl TryFrom<Record<SignedHashed<Action>>> for PrivMsg

source§

impl TryFrom<Record<SignedHashed<Action>>> for CreateLink<RateWeight>

source§

impl TryFrom<Record<SignedHashed<Action>>> for SerializedBytes

source§

impl TryFrom<RegisterAgentActivity> for SerializedBytes

source§

impl TryFrom<RegisterCreateLink> for SerializedBytes

source§

impl TryFrom<RegisterDelete> for SerializedBytes

source§

impl TryFrom<RegisterDeleteLink> for SerializedBytes

source§

impl TryFrom<RegisterUpdate> for SerializedBytes

source§

impl TryFrom<ScopedZomeType<EntryDefIndex>> for UnitEntryTypes

source§

impl TryFrom<ScopedZomeType<LinkType>> for SomeLinkTypes

source§

impl TryFrom<ScopedZomeTypesSet> for SerializedBytes

source§

impl TryFrom<SerializedBytes> for Action

source§

impl TryFrom<SerializedBytes> for ActionType

source§

impl TryFrom<SerializedBytes> for Entry

source§

impl TryFrom<SerializedBytes> for EntryCreationAction

source§

impl TryFrom<SerializedBytes> for EntryDefsCallbackResult

source§

impl TryFrom<SerializedBytes> for EntryType

source§

impl TryFrom<SerializedBytes> for EntryVisibility

source§

impl TryFrom<SerializedBytes> for Op

source§

impl TryFrom<SerializedBytes> for RecordEntry

source§

impl TryFrom<SerializedBytes> for ValidateCallbackResult

source§

impl TryFrom<SerializedBytes> for WeighInput

source§

impl TryFrom<SerializedBytes> for AnyDht

source§

impl TryFrom<SerializedBytes> for AnyLinkable

§

impl TryFrom<SerializedBytes> for ()

source§

impl TryFrom<SerializedBytes> for Msg

source§

impl TryFrom<SerializedBytes> for Post

source§

impl TryFrom<SerializedBytes> for PrivMsg

source§

impl TryFrom<SerializedBytes> for XSalsa20Poly1305Nonce

source§

impl TryFrom<SerializedBytes> for AgentValidationPkg

source§

impl TryFrom<SerializedBytes> for AppEntryBytes

source§

impl TryFrom<SerializedBytes> for AppEntryDef

source§

impl TryFrom<SerializedBytes> for CapClaim

source§

impl TryFrom<SerializedBytes> for CapSecret

source§

impl TryFrom<SerializedBytes> for ChainFilter<HoloHash<Action>>

source§

impl TryFrom<SerializedBytes> for CloseChain

source§

impl TryFrom<SerializedBytes> for Create<EntryRateWeight>

source§

impl TryFrom<SerializedBytes> for CreateLink<RateWeight>

source§

impl TryFrom<SerializedBytes> for Delete<RateWeight>

source§

impl TryFrom<SerializedBytes> for DeleteAction

source§

impl TryFrom<SerializedBytes> for Dna

source§

impl TryFrom<SerializedBytes> for EntryDefIndex

source§

impl TryFrom<SerializedBytes> for EntryHashes

source§

impl TryFrom<SerializedBytes> for EntryRateWeight

source§

impl TryFrom<SerializedBytes> for GenesisSelfCheckData

source§

impl TryFrom<SerializedBytes> for InitZomesComplete

source§

impl TryFrom<SerializedBytes> for LinkTag

source§

impl TryFrom<SerializedBytes> for LinkType

source§

impl TryFrom<SerializedBytes> for OpenChain

source§

impl TryFrom<SerializedBytes> for RateWeight

source§

impl TryFrom<SerializedBytes> for Record<SignedHashed<Action>>

source§

impl TryFrom<SerializedBytes> for RegisterAgentActivity

source§

impl TryFrom<SerializedBytes> for RegisterDelete

source§

impl TryFrom<SerializedBytes> for RegisterUpdate

source§

impl TryFrom<SerializedBytes> for ScopedZomeTypesSet

source§

impl TryFrom<SerializedBytes> for StoreEntry

source§

impl TryFrom<SerializedBytes> for StoreRecord

source§

impl TryFrom<SerializedBytes> for Update<EntryRateWeight>

source§

impl TryFrom<SerializedBytes> for UpdateAction

source§

impl TryFrom<SerializedBytes> for VerifySignature

source§

impl TryFrom<SerializedBytes> for X25519PubKey

source§

impl TryFrom<SerializedBytes> for X25519XSalsa20Poly1305Decrypt

source§

impl TryFrom<SerializedBytes> for XSalsa20Poly1305Decrypt

source§

impl TryFrom<SerializedBytes> for XSalsa20Poly1305KeyRef

source§

impl TryFrom<SerializedBytes> for ZomeIndex

source§

impl TryFrom<SerializedBytes> for ZomeInfo

source§

impl TryFrom<StoreEntry> for SerializedBytes

source§

impl TryFrom<StoreRecord> for SerializedBytes

source§

impl TryFrom<Update<EntryRateWeight>> for SerializedBytes

source§

impl TryFrom<UpdateAction> for SerializedBytes

source§

impl TryFrom<VerifySignature> for SerializedBytes

source§

impl TryFrom<X25519PubKey> for SerializedBytes

source§

impl TryFrom<X25519XSalsa20Poly1305Decrypt> for SerializedBytes

source§

impl TryFrom<XSalsa20Poly1305Decrypt> for SerializedBytes

source§

impl TryFrom<XSalsa20Poly1305KeyRef> for SerializedBytes

source§

impl TryFrom<ZomeIndex> for SerializedBytes

source§

impl TryFrom<ZomeInfo> for SerializedBytes

source§

impl TryFrom<Vec<u8, Global>> for Hash256Bits

source§

impl TryFrom<Vec<u8, Global>> for Hash512Bits

source§

impl TryFrom<Vec<u8, Global>> for XSalsa20Poly1305Nonce

source§

impl TryFrom<Vec<u8, Global>> for CapSecret

source§

impl TryFrom<Vec<u8, Global>> for Signature

source§

impl TryFrom<Vec<u8, Global>> for X25519PubKey

1.49.0 · source§

impl TryFrom<NonZeroI8> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroI8> for NonZeroU16

1.49.0 · source§

impl TryFrom<NonZeroI8> for NonZeroU32

1.49.0 · source§

impl TryFrom<NonZeroI8> for NonZeroU64

1.49.0 · source§

impl TryFrom<NonZeroI8> for NonZeroU128

1.49.0 · source§

impl TryFrom<NonZeroI8> for NonZeroUsize

1.49.0 · source§

impl TryFrom<NonZeroI16> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroI16> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroI16> for NonZeroU16

1.49.0 · source§

impl TryFrom<NonZeroI16> for NonZeroU32

1.49.0 · source§

impl TryFrom<NonZeroI16> for NonZeroU64

1.49.0 · source§

impl TryFrom<NonZeroI16> for NonZeroU128

1.49.0 · source§

impl TryFrom<NonZeroI16> for NonZeroUsize

1.49.0 · source§

impl TryFrom<NonZeroI32> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroI32> for NonZeroI16

1.49.0 · source§

impl TryFrom<NonZeroI32> for NonZeroIsize

1.49.0 · source§

impl TryFrom<NonZeroI32> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroI32> for NonZeroU16

1.49.0 · source§

impl TryFrom<NonZeroI32> for NonZeroU32

1.49.0 · source§

impl TryFrom<NonZeroI32> for NonZeroU64

1.49.0 · source§

impl TryFrom<NonZeroI32> for NonZeroU128

1.49.0 · source§

impl TryFrom<NonZeroI32> for NonZeroUsize

1.49.0 · source§

impl TryFrom<NonZeroI64> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroI64> for NonZeroI16

1.49.0 · source§

impl TryFrom<NonZeroI64> for NonZeroI32

1.49.0 · source§

impl TryFrom<NonZeroI64> for NonZeroIsize

1.49.0 · source§

impl TryFrom<NonZeroI64> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroI64> for NonZeroU16

1.49.0 · source§

impl TryFrom<NonZeroI64> for NonZeroU32

1.49.0 · source§

impl TryFrom<NonZeroI64> for NonZeroU64

1.49.0 · source§

impl TryFrom<NonZeroI64> for NonZeroU128

1.49.0 · source§

impl TryFrom<NonZeroI64> for NonZeroUsize

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroI16

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroI32

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroI64

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroIsize

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroU16

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroU32

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroU64

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroU128

1.49.0 · source§

impl TryFrom<NonZeroI128> for NonZeroUsize

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroI16

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroI32

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroI64

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroI128

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroU16

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroU32

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroU64

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroU128

1.49.0 · source§

impl TryFrom<NonZeroIsize> for NonZeroUsize

1.49.0 · source§

impl TryFrom<NonZeroU8> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroU16> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroU16> for NonZeroI16

1.49.0 · source§

impl TryFrom<NonZeroU16> for NonZeroIsize

1.49.0 · source§

impl TryFrom<NonZeroU16> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroU32> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroU32> for NonZeroI16

1.49.0 · source§

impl TryFrom<NonZeroU32> for NonZeroI32

1.49.0 · source§

impl TryFrom<NonZeroU32> for NonZeroIsize

1.49.0 · source§

impl TryFrom<NonZeroU32> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroU32> for NonZeroU16

1.49.0 · source§

impl TryFrom<NonZeroU32> for NonZeroUsize

§

impl TryFrom<NonZeroU32> for Opcode

§

type Error = ()

1.49.0 · source§

impl TryFrom<NonZeroU64> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroU64> for NonZeroI16

1.49.0 · source§

impl TryFrom<NonZeroU64> for NonZeroI32

1.49.0 · source§

impl TryFrom<NonZeroU64> for NonZeroI64

1.49.0 · source§

impl TryFrom<NonZeroU64> for NonZeroIsize

1.49.0 · source§

impl TryFrom<NonZeroU64> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroU64> for NonZeroU16

1.49.0 · source§

impl TryFrom<NonZeroU64> for NonZeroU32

1.49.0 · source§

impl TryFrom<NonZeroU64> for NonZeroUsize

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroI16

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroI32

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroI64

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroI128

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroIsize

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroU16

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroU32

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroU64

1.49.0 · source§

impl TryFrom<NonZeroU128> for NonZeroUsize

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroI8

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroI16

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroI32

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroI64

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroI128

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroIsize

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroU8

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroU16

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroU32

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroU64

1.49.0 · source§

impl TryFrom<NonZeroUsize> for NonZeroU128

source§

impl TryFrom<NonZeroUsize> for Alignment

§

impl TryFrom<Duration> for Timestamp

§

impl TryFrom<Bytes> for Pages

§

type Error = PageCountOutOfRange

source§

impl<'a> TryFrom<&'a Action> for &'a CreateLink<RateWeight>

source§

impl<'a> TryFrom<&'a Action> for &'a Delete<RateWeight>

source§

impl<'a> TryFrom<&'a Action> for &'a Update<EntryRateWeight>

§

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

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));
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<T> TryFrom<&HoloHash<T>> for SerializedByteswhere
    T: HashType,

source§

impl<T> TryFrom<HoloHash<T>> for SerializedByteswhere
    T: HashType,

source§

impl<T> TryFrom<SerializedBytes> for HoloHash<T>where
    T: HashType,

§

impl<T> TryFrom<Value<T>> for f32where
    T: WasmValueType,

§

type Error = &'static str

§

impl<T> TryFrom<Value<T>> for f64where
    T: WasmValueType,

§

type Error = &'static str

§

impl<T> TryFrom<Value<T>> for i32where
    T: WasmValueType,

§

type Error = &'static str

§

impl<T> TryFrom<Value<T>> for i64where
    T: WasmValueType,

§

type Error = &'static str

§

impl<T> TryFrom<Value<T>> for u32where
    T: WasmValueType,

§

type Error = &'static str

§

impl<T> TryFrom<Value<T>> for u64where
    T: WasmValueType,

§

type Error = &'static str

1.48.0 · source§

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

§

type Error = Vec<T, A>

const: unstable · source§

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

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));
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));
1.43.0 · source§

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

1.43.0 · source§

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

§

type Error = Rc<[T]>

1.43.0 · source§

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

§

type Error = Arc<[T]>

1.66.0 · source§

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

§

type Error = Vec<T, Global>