pub trait TryFrom<T>: Sized {
type Error;
// Required method
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 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 UimpliesTryInto<U> for Ttry_fromis reflexive, which means thatTryFrom<T> for Tis implemented and cannot fail – the associatedErrortype for callingT::try_from()on a value of typeTisInfallible. When the!type is stabilizedInfallibleand!will be equivalent.
Prefer using TryInto over TryFrom when specifying trait bounds on a generic function
to ensure that types that only implement TryInto can be used as well.
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§
Required Methods§
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<&SubstateKey> for AuthZoneField
impl TryFrom<&SubstateKey> for AuthZoneField
Source§impl TryFrom<&SubstateKey> for BootLoaderField
impl TryFrom<&SubstateKey> for BootLoaderField
Source§impl TryFrom<&SubstateKey> for ComponentField
impl TryFrom<&SubstateKey> for ComponentField
Source§impl TryFrom<&SubstateKey> for ConsensusManagerField
impl TryFrom<&SubstateKey> for ConsensusManagerField
Source§impl TryFrom<&SubstateKey> for FungibleBucketField
impl TryFrom<&SubstateKey> for FungibleBucketField
Source§impl TryFrom<&SubstateKey> for FungibleProofField
impl TryFrom<&SubstateKey> for FungibleProofField
Source§impl TryFrom<&SubstateKey> for FungibleVaultField
impl TryFrom<&SubstateKey> for FungibleVaultField
Source§impl TryFrom<&SubstateKey> for NonFungibleBucketField
impl TryFrom<&SubstateKey> for NonFungibleBucketField
Source§impl TryFrom<&SubstateKey> for NonFungibleProofField
impl TryFrom<&SubstateKey> for NonFungibleProofField
Source§impl TryFrom<&SubstateKey> for NonFungibleVaultField
impl TryFrom<&SubstateKey> for NonFungibleVaultField
Source§impl TryFrom<&SubstateKey> for PackageField
impl TryFrom<&SubstateKey> for PackageField
Source§impl TryFrom<&SubstateKey> for ProtocolUpdateStatusField
impl TryFrom<&SubstateKey> for ProtocolUpdateStatusField
Source§impl TryFrom<&SubstateKey> for RoyaltyField
impl TryFrom<&SubstateKey> for RoyaltyField
Source§impl TryFrom<&SubstateKey> for TransactionTrackerField
impl TryFrom<&SubstateKey> for TransactionTrackerField
Source§impl TryFrom<&SubstateKey> for TypeInfoField
impl TryFrom<&SubstateKey> for TypeInfoField
Source§impl TryFrom<&SubstateKey> for ValidatorField
impl TryFrom<&SubstateKey> for ValidatorField
Source§impl TryFrom<&SubstateKey> for WorktopField
impl TryFrom<&SubstateKey> for WorktopField
Source§impl TryFrom<&SubstateKey> for AccountField
impl TryFrom<&SubstateKey> for AccountField
Source§impl TryFrom<&SubstateKey> for RoleAssignmentField
impl TryFrom<&SubstateKey> for RoleAssignmentField
Source§impl TryFrom<&SubstateKey> for ComponentRoyaltyField
impl TryFrom<&SubstateKey> for ComponentRoyaltyField
Source§impl TryFrom<&SubstateKey> for MultiResourcePoolField
impl TryFrom<&SubstateKey> for MultiResourcePoolField
Source§impl TryFrom<&SubstateKey> for OneResourcePoolField
impl TryFrom<&SubstateKey> for OneResourcePoolField
Source§impl TryFrom<&SubstateKey> for TwoResourcePoolField
impl TryFrom<&SubstateKey> for TwoResourcePoolField
Source§impl TryFrom<&SubstateKey> for AccessControllerField
impl TryFrom<&SubstateKey> for AccessControllerField
Source§impl TryFrom<&SubstateKey> for AccessControllerV2Field
impl TryFrom<&SubstateKey> for AccessControllerV2Field
Source§impl TryFrom<&SubstateKey> for MetadataEntryKeyPayload
impl TryFrom<&SubstateKey> for MetadataEntryKeyPayload
Source§impl TryFrom<&SubstateKey> for PackageCodeVmTypeKeyPayload
impl TryFrom<&SubstateKey> for PackageCodeVmTypeKeyPayload
Source§impl TryFrom<&SubstateKey> for PackageSchemaKeyPayload
impl TryFrom<&SubstateKey> for PackageSchemaKeyPayload
Source§impl TryFrom<&str> for PreciseDecimal
impl TryFrom<&str> for PreciseDecimal
Source§impl TryFrom<&str> for StringNonFungibleLocalId
impl TryFrom<&str> for StringNonFungibleLocalId
Source§impl TryFrom<&PreciseDecimal> for i8
impl TryFrom<&PreciseDecimal> for i8
Source§impl TryFrom<&PreciseDecimal> for i16
impl TryFrom<&PreciseDecimal> for i16
Source§impl TryFrom<&PreciseDecimal> for i32
impl TryFrom<&PreciseDecimal> for i32
Source§impl TryFrom<&PreciseDecimal> for i64
impl TryFrom<&PreciseDecimal> for i64
Source§impl TryFrom<&PreciseDecimal> for i128
impl TryFrom<&PreciseDecimal> for i128
Source§impl TryFrom<&PreciseDecimal> for isize
impl TryFrom<&PreciseDecimal> for isize
Source§impl TryFrom<&PreciseDecimal> for u8
impl TryFrom<&PreciseDecimal> for u8
Source§impl TryFrom<&PreciseDecimal> for u16
impl TryFrom<&PreciseDecimal> for u16
Source§impl TryFrom<&PreciseDecimal> for u32
impl TryFrom<&PreciseDecimal> for u32
Source§impl TryFrom<&PreciseDecimal> for u64
impl TryFrom<&PreciseDecimal> for u64
Source§impl TryFrom<&PreciseDecimal> for u128
impl TryFrom<&PreciseDecimal> for u128
Source§impl TryFrom<&PreciseDecimal> for usize
impl TryFrom<&PreciseDecimal> for usize
Source§impl TryFrom<&[u8]> for ManifestExpression
impl TryFrom<&[u8]> for ManifestExpression
Source§impl TryFrom<&[u8]> for CompressedEdwardsY
impl TryFrom<&[u8]> for CompressedEdwardsY
type Error = TryFromSliceError
Source§impl TryFrom<&[u8]> for CompressedRistretto
impl TryFrom<&[u8]> for CompressedRistretto
type Error = TryFromSliceError
Source§impl TryFrom<&[u8]> for Bls12381G1PublicKey
impl TryFrom<&[u8]> for Bls12381G1PublicKey
Source§impl TryFrom<&[u8]> for Bls12381G2Signature
impl TryFrom<&[u8]> for Bls12381G2Signature
Source§impl TryFrom<&[u8]> for ComponentAddress
impl TryFrom<&[u8]> for ComponentAddress
Source§impl TryFrom<&[u8]> for Ed25519PublicKey
impl TryFrom<&[u8]> for Ed25519PublicKey
Source§impl TryFrom<&[u8]> for Ed25519Signature
impl TryFrom<&[u8]> for Ed25519Signature
Source§impl TryFrom<&[u8]> for GlobalAddress
impl TryFrom<&[u8]> for GlobalAddress
Source§impl TryFrom<&[u8]> for InternalAddress
impl TryFrom<&[u8]> for InternalAddress
Source§impl TryFrom<&[u8]> for ManifestAddressReservation
impl TryFrom<&[u8]> for ManifestAddressReservation
Source§impl TryFrom<&[u8]> for ManifestBlobRef
impl TryFrom<&[u8]> for ManifestBlobRef
Source§impl TryFrom<&[u8]> for ManifestBucket
impl TryFrom<&[u8]> for ManifestBucket
Source§impl TryFrom<&[u8]> for ManifestDecimal
impl TryFrom<&[u8]> for ManifestDecimal
Source§impl TryFrom<&[u8]> for ManifestPreciseDecimal
impl TryFrom<&[u8]> for ManifestPreciseDecimal
Source§impl TryFrom<&[u8]> for ManifestProof
impl TryFrom<&[u8]> for ManifestProof
Source§impl TryFrom<&[u8]> for PackageAddress
impl TryFrom<&[u8]> for PackageAddress
Source§impl TryFrom<&[u8]> for PreciseDecimal
impl TryFrom<&[u8]> for PreciseDecimal
Source§impl TryFrom<&[u8]> for ResourceAddress
impl TryFrom<&[u8]> for ResourceAddress
Source§impl TryFrom<&[u8]> for Secp256k1PublicKey
impl TryFrom<&[u8]> for Secp256k1PublicKey
Source§impl TryFrom<&[u8]> for Secp256k1Signature
impl TryFrom<&[u8]> for Secp256k1Signature
Source§impl TryFrom<InstructionV2> for InstructionV1
impl TryFrom<InstructionV2> for InstructionV1
Source§impl TryFrom<AnyManifest> for SubintentManifestV2
impl TryFrom<AnyManifest> for SubintentManifestV2
Source§impl TryFrom<AnyManifest> for TransactionManifestV1
impl TryFrom<AnyManifest> for TransactionManifestV1
Source§impl TryFrom<AnyManifest> for TransactionManifestV2
impl TryFrom<AnyManifest> for TransactionManifestV2
1.59.0 (const: unstable) · 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.
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.
type Error = TryFromCharError
1.74.0 (const: unstable) · 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.
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.
type Error = TryFromCharError
1.46.0 (const: unstable) · Source§impl TryFrom<i8> for NonZero<i8>
impl TryFrom<i8> for NonZero<i8>
type Error = TryFromIntError
1.46.0 (const: unstable) · Source§impl TryFrom<i16> for NonZero<i16>
impl TryFrom<i16> for NonZero<i16>
type Error = TryFromIntError
Source§impl TryFrom<i32> for Parity
Even for 0, Odd for 1, error for anything else
impl TryFrom<i32> for Parity
Even for 0, Odd for 1, error for anything else
type Error = InvalidParityValue
1.46.0 (const: unstable) · Source§impl TryFrom<i32> for NonZero<i32>
impl TryFrom<i32> for NonZero<i32>
type Error = TryFromIntError
1.46.0 (const: unstable) · Source§impl TryFrom<i64> for NonZero<i64>
impl TryFrom<i64> for NonZero<i64>
type Error = TryFromIntError
1.46.0 (const: unstable) · Source§impl TryFrom<i128> for NonZero<i128>
impl TryFrom<i128> for NonZero<i128>
type Error = TryFromIntError
1.46.0 (const: unstable) · Source§impl TryFrom<isize> for NonZero<isize>
impl TryFrom<isize> for NonZero<isize>
type Error = TryFromIntError
Source§impl TryFrom<u8> for Parity
Even for 0, Odd for 1, error for anything else
impl TryFrom<u8> for Parity
Even for 0, Odd for 1, error for anything else
type Error = InvalidParityValue
1.46.0 (const: unstable) · Source§impl TryFrom<u8> for NonZero<u8>
impl TryFrom<u8> for NonZero<u8>
type Error = TryFromIntError
Source§impl TryFrom<u16> for SmallIndex
impl TryFrom<u16> for SmallIndex
type Error = SmallIndexError
1.46.0 (const: unstable) · Source§impl TryFrom<u16> for NonZero<u16>
impl TryFrom<u16> for NonZero<u16>
type Error = TryFromIntError
Source§impl TryFrom<u32> for SmallIndex
impl TryFrom<u32> for SmallIndex
type Error = SmallIndexError
1.46.0 (const: unstable) · Source§impl TryFrom<u32> for NonZero<u32>
impl TryFrom<u32> for NonZero<u32>
type Error = TryFromIntError
Source§impl TryFrom<u64> for ScryptoVmVersion
impl TryFrom<u64> for ScryptoVmVersion
Source§impl TryFrom<u64> for SmallIndex
impl TryFrom<u64> for SmallIndex
type Error = SmallIndexError
1.46.0 (const: unstable) · Source§impl TryFrom<u64> for NonZero<u64>
impl TryFrom<u64> for NonZero<u64>
type Error = TryFromIntError
1.46.0 (const: unstable) · Source§impl TryFrom<u128> for NonZero<u128>
impl TryFrom<u128> for NonZero<u128>
type Error = TryFromIntError
Source§impl TryFrom<usize> for SmallIndex
impl TryFrom<usize> for SmallIndex
type Error = SmallIndexError
1.46.0 (const: unstable) · Source§impl TryFrom<usize> for NonZero<usize>
impl TryFrom<usize> for NonZero<usize>
type Error = TryFromIntError
Source§impl TryFrom<ByteString> for String
impl TryFrom<ByteString> for String
type Error = FromUtf8Error
Source§impl TryFrom<BranchOffset> for BranchOffset16
impl TryFrom<BranchOffset> for BranchOffset16
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i8>> for NonZero<u8>
impl TryFrom<NonZero<i8>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i8>> for NonZero<u16>
impl TryFrom<NonZero<i8>> for NonZero<u16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i8>> for NonZero<u32>
impl TryFrom<NonZero<i8>> for NonZero<u32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i8>> for NonZero<u64>
impl TryFrom<NonZero<i8>> for NonZero<u64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i8>> for NonZero<u128>
impl TryFrom<NonZero<i8>> for NonZero<u128>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i8>> for NonZero<usize>
impl TryFrom<NonZero<i8>> for NonZero<usize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i16>> for NonZero<i8>
impl TryFrom<NonZero<i16>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i16>> for NonZero<u8>
impl TryFrom<NonZero<i16>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i16>> for NonZero<u16>
impl TryFrom<NonZero<i16>> for NonZero<u16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i16>> for NonZero<u32>
impl TryFrom<NonZero<i16>> for NonZero<u32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i16>> for NonZero<u64>
impl TryFrom<NonZero<i16>> for NonZero<u64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i16>> for NonZero<u128>
impl TryFrom<NonZero<i16>> for NonZero<u128>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i16>> for NonZero<usize>
impl TryFrom<NonZero<i16>> for NonZero<usize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i32>> for NonZero<i8>
impl TryFrom<NonZero<i32>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i32>> for NonZero<i16>
impl TryFrom<NonZero<i32>> for NonZero<i16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i32>> for NonZero<isize>
impl TryFrom<NonZero<i32>> for NonZero<isize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i32>> for NonZero<u8>
impl TryFrom<NonZero<i32>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i32>> for NonZero<u16>
impl TryFrom<NonZero<i32>> for NonZero<u16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i32>> for NonZero<u32>
impl TryFrom<NonZero<i32>> for NonZero<u32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i32>> for NonZero<u64>
impl TryFrom<NonZero<i32>> for NonZero<u64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i32>> for NonZero<u128>
impl TryFrom<NonZero<i32>> for NonZero<u128>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i32>> for NonZero<usize>
impl TryFrom<NonZero<i32>> for NonZero<usize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i64>> for NonZero<i8>
impl TryFrom<NonZero<i64>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i64>> for NonZero<i16>
impl TryFrom<NonZero<i64>> for NonZero<i16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i64>> for NonZero<i32>
impl TryFrom<NonZero<i64>> for NonZero<i32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i64>> for NonZero<isize>
impl TryFrom<NonZero<i64>> for NonZero<isize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i64>> for NonZero<u8>
impl TryFrom<NonZero<i64>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i64>> for NonZero<u16>
impl TryFrom<NonZero<i64>> for NonZero<u16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i64>> for NonZero<u32>
impl TryFrom<NonZero<i64>> for NonZero<u32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i64>> for NonZero<u64>
impl TryFrom<NonZero<i64>> for NonZero<u64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i64>> for NonZero<u128>
impl TryFrom<NonZero<i64>> for NonZero<u128>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i64>> for NonZero<usize>
impl TryFrom<NonZero<i64>> for NonZero<usize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<i8>
impl TryFrom<NonZero<i128>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<i16>
impl TryFrom<NonZero<i128>> for NonZero<i16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<i32>
impl TryFrom<NonZero<i128>> for NonZero<i32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<i64>
impl TryFrom<NonZero<i128>> for NonZero<i64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<isize>
impl TryFrom<NonZero<i128>> for NonZero<isize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<u8>
impl TryFrom<NonZero<i128>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<u16>
impl TryFrom<NonZero<i128>> for NonZero<u16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<u32>
impl TryFrom<NonZero<i128>> for NonZero<u32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<u64>
impl TryFrom<NonZero<i128>> for NonZero<u64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<u128>
impl TryFrom<NonZero<i128>> for NonZero<u128>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<i128>> for NonZero<usize>
impl TryFrom<NonZero<i128>> for NonZero<usize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<i8>
impl TryFrom<NonZero<isize>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<i16>
impl TryFrom<NonZero<isize>> for NonZero<i16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<i32>
impl TryFrom<NonZero<isize>> for NonZero<i32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<i64>
impl TryFrom<NonZero<isize>> for NonZero<i64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<i128>
impl TryFrom<NonZero<isize>> for NonZero<i128>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<u8>
impl TryFrom<NonZero<isize>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<u16>
impl TryFrom<NonZero<isize>> for NonZero<u16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<u32>
impl TryFrom<NonZero<isize>> for NonZero<u32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<u64>
impl TryFrom<NonZero<isize>> for NonZero<u64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<u128>
impl TryFrom<NonZero<isize>> for NonZero<u128>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<isize>> for NonZero<usize>
impl TryFrom<NonZero<isize>> for NonZero<usize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u8>> for NonZero<i8>
impl TryFrom<NonZero<u8>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u16>> for NonZero<i8>
impl TryFrom<NonZero<u16>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u16>> for NonZero<i16>
impl TryFrom<NonZero<u16>> for NonZero<i16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u16>> for NonZero<isize>
impl TryFrom<NonZero<u16>> for NonZero<isize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u16>> for NonZero<u8>
impl TryFrom<NonZero<u16>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u32>> for NonZero<i8>
impl TryFrom<NonZero<u32>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u32>> for NonZero<i16>
impl TryFrom<NonZero<u32>> for NonZero<i16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u32>> for NonZero<i32>
impl TryFrom<NonZero<u32>> for NonZero<i32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u32>> for NonZero<isize>
impl TryFrom<NonZero<u32>> for NonZero<isize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u32>> for NonZero<u8>
impl TryFrom<NonZero<u32>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u32>> for NonZero<u16>
impl TryFrom<NonZero<u32>> for NonZero<u16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u32>> for NonZero<usize>
impl TryFrom<NonZero<u32>> for NonZero<usize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u64>> for NonZero<i8>
impl TryFrom<NonZero<u64>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u64>> for NonZero<i16>
impl TryFrom<NonZero<u64>> for NonZero<i16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u64>> for NonZero<i32>
impl TryFrom<NonZero<u64>> for NonZero<i32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u64>> for NonZero<i64>
impl TryFrom<NonZero<u64>> for NonZero<i64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u64>> for NonZero<isize>
impl TryFrom<NonZero<u64>> for NonZero<isize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u64>> for NonZero<u8>
impl TryFrom<NonZero<u64>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u64>> for NonZero<u16>
impl TryFrom<NonZero<u64>> for NonZero<u16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u64>> for NonZero<u32>
impl TryFrom<NonZero<u64>> for NonZero<u32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u64>> for NonZero<usize>
impl TryFrom<NonZero<u64>> for NonZero<usize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<i8>
impl TryFrom<NonZero<u128>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<i16>
impl TryFrom<NonZero<u128>> for NonZero<i16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<i32>
impl TryFrom<NonZero<u128>> for NonZero<i32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<i64>
impl TryFrom<NonZero<u128>> for NonZero<i64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<i128>
impl TryFrom<NonZero<u128>> for NonZero<i128>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<isize>
impl TryFrom<NonZero<u128>> for NonZero<isize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<u8>
impl TryFrom<NonZero<u128>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<u16>
impl TryFrom<NonZero<u128>> for NonZero<u16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<u32>
impl TryFrom<NonZero<u128>> for NonZero<u32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<u64>
impl TryFrom<NonZero<u128>> for NonZero<u64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<u128>> for NonZero<usize>
impl TryFrom<NonZero<u128>> for NonZero<usize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<i8>
impl TryFrom<NonZero<usize>> for NonZero<i8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<i16>
impl TryFrom<NonZero<usize>> for NonZero<i16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<i32>
impl TryFrom<NonZero<usize>> for NonZero<i32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<i64>
impl TryFrom<NonZero<usize>> for NonZero<i64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<i128>
impl TryFrom<NonZero<usize>> for NonZero<i128>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<isize>
impl TryFrom<NonZero<usize>> for NonZero<isize>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<u8>
impl TryFrom<NonZero<usize>> for NonZero<u8>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<u16>
impl TryFrom<NonZero<usize>> for NonZero<u16>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<u32>
impl TryFrom<NonZero<usize>> for NonZero<u32>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<u64>
impl TryFrom<NonZero<usize>> for NonZero<u64>
type Error = TryFromIntError
1.49.0 (const: unstable) · Source§impl TryFrom<NonZero<usize>> for NonZero<u128>
impl TryFrom<NonZero<usize>> for NonZero<u128>
type Error = TryFromIntError
Source§impl TryFrom<GlobalAddress> for ComponentAddress
impl TryFrom<GlobalAddress> for ComponentAddress
Source§impl TryFrom<GlobalAddress> for PackageAddress
impl TryFrom<GlobalAddress> for PackageAddress
Source§impl TryFrom<GlobalAddress> for ResourceAddress
impl TryFrom<GlobalAddress> for ResourceAddress
Source§impl TryFrom<I192> for PreciseDecimal
impl TryFrom<I192> for PreciseDecimal
Source§impl TryFrom<I256> for PreciseDecimal
impl TryFrom<I256> for PreciseDecimal
Source§impl TryFrom<I320> for PreciseDecimal
impl TryFrom<I320> for PreciseDecimal
Source§impl TryFrom<I384> for PreciseDecimal
impl TryFrom<I384> for PreciseDecimal
Source§impl TryFrom<I448> for PreciseDecimal
impl TryFrom<I448> for PreciseDecimal
Source§impl TryFrom<I512> for PreciseDecimal
impl TryFrom<I512> for PreciseDecimal
Source§impl TryFrom<Instant> for UtcDateTime
impl TryFrom<Instant> for UtcDateTime
type Error = DateTimeError
Source§impl TryFrom<NodeId> for ComponentAddress
impl TryFrom<NodeId> for ComponentAddress
Source§impl TryFrom<NodeId> for GlobalAddress
impl TryFrom<NodeId> for GlobalAddress
Source§impl TryFrom<NodeId> for InternalAddress
impl TryFrom<NodeId> for InternalAddress
Source§impl TryFrom<NodeId> for PackageAddress
impl TryFrom<NodeId> for PackageAddress
Source§impl TryFrom<NodeId> for ResourceAddress
impl TryFrom<NodeId> for ResourceAddress
Source§impl TryFrom<PreciseDecimal> for i8
impl TryFrom<PreciseDecimal> for i8
Source§impl TryFrom<PreciseDecimal> for i16
impl TryFrom<PreciseDecimal> for i16
Source§impl TryFrom<PreciseDecimal> for i32
impl TryFrom<PreciseDecimal> for i32
Source§impl TryFrom<PreciseDecimal> for i64
impl TryFrom<PreciseDecimal> for i64
Source§impl TryFrom<PreciseDecimal> for i128
impl TryFrom<PreciseDecimal> for i128
Source§impl TryFrom<PreciseDecimal> for isize
impl TryFrom<PreciseDecimal> for isize
Source§impl TryFrom<PreciseDecimal> for u8
impl TryFrom<PreciseDecimal> for u8
Source§impl TryFrom<PreciseDecimal> for u16
impl TryFrom<PreciseDecimal> for u16
Source§impl TryFrom<PreciseDecimal> for u32
impl TryFrom<PreciseDecimal> for u32
Source§impl TryFrom<PreciseDecimal> for u64
impl TryFrom<PreciseDecimal> for u64
Source§impl TryFrom<PreciseDecimal> for u128
impl TryFrom<PreciseDecimal> for u128
Source§impl TryFrom<PreciseDecimal> for usize
impl TryFrom<PreciseDecimal> for usize
Source§impl TryFrom<PreciseDecimal> for Decimal
impl TryFrom<PreciseDecimal> for Decimal
type Error = ParseDecimalError
Source§impl TryFrom<String> for NonFungibleLocalId
impl TryFrom<String> for NonFungibleLocalId
Source§impl TryFrom<String> for PreciseDecimal
impl TryFrom<String> for PreciseDecimal
Source§impl TryFrom<String> for StringNonFungibleLocalId
impl TryFrom<String> for StringNonFungibleLocalId
Source§impl TryFrom<U192> for PreciseDecimal
impl TryFrom<U192> for PreciseDecimal
Source§impl TryFrom<U256> for PreciseDecimal
impl TryFrom<U256> for PreciseDecimal
Source§impl TryFrom<U320> for PreciseDecimal
impl TryFrom<U320> for PreciseDecimal
Source§impl TryFrom<U384> for PreciseDecimal
impl TryFrom<U384> for PreciseDecimal
Source§impl TryFrom<U448> for PreciseDecimal
impl TryFrom<U448> for PreciseDecimal
Source§impl TryFrom<U512> for PreciseDecimal
impl TryFrom<U512> for PreciseDecimal
Source§impl TryFrom<UncheckedOrigin> for CheckedOrigin
impl TryFrom<UncheckedOrigin> for CheckedOrigin
Source§impl TryFrom<UncheckedUrl> for CheckedUrl
impl TryFrom<UncheckedUrl> for CheckedUrl
Source§impl<'a> TryFrom<&'a blst_scalar> for &'a blst::min_pk::SecretKey
impl<'a> TryFrom<&'a blst_scalar> for &'a blst::min_pk::SecretKey
type Error = BLST_ERROR
Source§impl<'a> TryFrom<&'a blst_scalar> for &'a blst::min_sig::SecretKey
impl<'a> TryFrom<&'a blst_scalar> for &'a blst::min_sig::SecretKey
type Error = BLST_ERROR
Source§impl<'a> TryFrom<&'a SerializedSignature> for secp256k1::ecdsa::Signature
impl<'a> TryFrom<&'a SerializedSignature> for secp256k1::ecdsa::Signature
Source§impl<'a, E> TryFrom<&'a [u8]> for RawPayload<'a, E>where
E: CustomExtension,
impl<'a, E> TryFrom<&'a [u8]> for RawPayload<'a, E>where
E: CustomExtension,
1.34.0 (const: unstable) · 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.
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));type Error = TryFromSliceError
1.34.0 (const: unstable) · 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.
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));type Error = TryFromSliceError
Source§impl<'a, const CAP: usize> TryFrom<&'a str> for ArrayString<CAP>
impl<'a, const CAP: usize> TryFrom<&'a str> for ArrayString<CAP>
type Error = CapacityError<&'a str>
Source§impl<'a, const CAP: usize> TryFrom<Arguments<'a>> for ArrayString<CAP>
impl<'a, const CAP: usize> TryFrom<Arguments<'a>> for ArrayString<CAP>
type Error = CapacityError<Error>
1.43.0 · Source§impl<T, A, const N: usize> TryFrom<Arc<[T], A>> for Arc<[T; N], A>where
A: Allocator,
impl<T, A, const N: usize> TryFrom<Arc<[T], A>> for Arc<[T; N], A>where
A: Allocator,
1.34.0 (const: unstable) · Source§impl<T, U> TryFrom<U> for Twhere
U: Into<T>,
impl<T, U> TryFrom<U> for Twhere
U: Into<T>,
type Error = Infallible
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.
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);type Error = CapacityError
1.34.0 (const: unstable) · 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.
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));type Error = TryFromSliceError
1.59.0 (const: unstable) · 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.
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));