AsRef

Trait AsRef 

1.0.0 (const: unstable) · Source
pub trait AsRef<T>
where T: ?Sized,
{ // Required method fn as_ref(&self) -> &T; }
Expand description

Used to do a cheap reference-to-reference conversion.

This trait is similar to AsMut which is used for converting between mutable references. If you need to do a costly conversion it is better to implement From with type &T or write a custom function.

§Relation to Borrow

AsRef has the same signature as Borrow, but Borrow is different in a few aspects:

  • Unlike AsRef, Borrow has a blanket impl for any T, and can be used to accept either a reference or a value. (See also note on AsRef’s reflexibility below.)
  • Borrow also requires that Hash, Eq and Ord for a borrowed value are equivalent to those of the owned value. For this reason, if you want to borrow only a single field of a struct you can implement AsRef, but not Borrow.

Note: This trait must not fail. If the conversion can fail, use a dedicated method which returns an Option<T> or a Result<T, E>.

§Generic Implementations

AsRef auto-dereferences if the inner type is a reference or a mutable reference (e.g.: foo.as_ref() will work the same if foo has type &mut Foo or &&mut Foo).

Note that due to historic reasons, the above currently does not hold generally for all dereferenceable types, e.g. foo.as_ref() will not work the same as Box::new(foo).as_ref(). Instead, many smart pointers provide an as_ref implementation which simply returns a reference to the pointed-to value (but do not perform a cheap reference-to-reference conversion for that value). However, AsRef::as_ref should not be used for the sole purpose of dereferencing; instead Deref coercion’ can be used:

let x = Box::new(5i32);
// Avoid this:
// let y: &i32 = x.as_ref();
// Better just write:
let y: &i32 = &x;

Types which implement Deref should consider implementing AsRef<T> as follows:

impl<T> AsRef<T> for SomeType
where
    T: ?Sized,
    <SomeType as Deref>::Target: AsRef<T>,
{
    fn as_ref(&self) -> &T {
        self.deref().as_ref()
    }
}

§Reflexivity

Ideally, AsRef would be reflexive, i.e. there would be an impl<T: ?Sized> AsRef<T> for T with as_ref simply returning its argument unchanged. Such a blanket implementation is currently not provided due to technical restrictions of Rust’s type system (it would be overlapping with another existing blanket implementation for &T where T: AsRef<U> which allows AsRef to auto-dereference, see “Generic Implementations” above).

A trivial implementation of AsRef<T> for T must be added explicitly for a particular type T where needed or desired. Note, however, that not all types from std contain such an implementation, and those cannot be added by external code due to orphan rules.

§Examples

By using trait bounds we can accept arguments of different types as long as they can be converted to the specified type T.

For example: By creating a generic function that takes an AsRef<str> we express that we want to accept all references that can be converted to &str as an argument. Since both String and &str implement AsRef<str> we can accept both as input argument.

fn is_hello<T: AsRef<str>>(s: T) {
   assert_eq!("hello", s.as_ref());
}

let s = "hello";
is_hello(s);

let s = "hello".to_string();
is_hello(s);

Required Methods§

1.0.0 · Source

fn as_ref(&self) -> &T

Converts this type into a shared reference of the (usually inferred) input type.

Implementors§

Source§

impl AsRef<ConsensusManagerConfigurationVersions> for VersionedConsensusManagerConfiguration

Source§

impl AsRef<ConsensusManagerCurrentProposalStatisticVersions> for VersionedConsensusManagerCurrentProposalStatistic

Source§

impl AsRef<ConsensusManagerCurrentValidatorSetVersions> for VersionedConsensusManagerCurrentValidatorSet

Source§

impl AsRef<ConsensusManagerProposerMilliTimestampVersions> for VersionedConsensusManagerProposerMilliTimestamp

Source§

impl AsRef<ConsensusManagerProposerMinuteTimestampVersions> for VersionedConsensusManagerProposerMinuteTimestamp

Source§

impl AsRef<ConsensusManagerRegisteredValidatorByStakeVersions> for VersionedConsensusManagerRegisteredValidatorByStake

Source§

impl AsRef<ConsensusManagerStateVersions> for VersionedConsensusManagerState

Source§

impl AsRef<ConsensusManagerValidatorRewardsVersions> for VersionedConsensusManagerValidatorRewards

Source§

impl AsRef<FungibleResourceManagerDivisibilityVersions> for VersionedFungibleResourceManagerDivisibility

Source§

impl AsRef<FungibleResourceManagerTotalSupplyVersions> for VersionedFungibleResourceManagerTotalSupply

Source§

impl AsRef<FungibleVaultBalanceVersions> for VersionedFungibleVaultBalance

Source§

impl AsRef<FungibleVaultFreezeStatusVersions> for VersionedFungibleVaultFreezeStatus

Source§

impl AsRef<FungibleVaultLockedBalanceVersions> for VersionedFungibleVaultLockedBalance

Source§

impl AsRef<LedgerTransactionHashesVersions> for VersionedLedgerTransactionHashes

Source§

impl AsRef<NonFungibleLocalId> for NonFungibleResourceManagerDataKeyPayload

Source§

impl AsRef<NonFungibleLocalId> for NonFungibleVaultNonFungibleKeyPayload

Source§

impl AsRef<NonFungibleResourceManagerIdTypeVersions> for VersionedNonFungibleResourceManagerIdType

Source§

impl AsRef<NonFungibleResourceManagerMutableFieldsVersions> for VersionedNonFungibleResourceManagerMutableFields

Source§

impl AsRef<NonFungibleResourceManagerTotalSupplyVersions> for VersionedNonFungibleResourceManagerTotalSupply

Source§

impl AsRef<NonFungibleVaultBalanceVersions> for VersionedNonFungibleVaultBalance

Source§

impl AsRef<NonFungibleVaultFreezeStatusVersions> for VersionedNonFungibleVaultFreezeStatus

Source§

impl AsRef<NonFungibleVaultLockedResourceVersions> for VersionedNonFungibleVaultLockedResource

Source§

impl AsRef<NonFungibleVaultNonFungibleVersions> for VersionedNonFungibleVaultNonFungible

Source§

impl AsRef<PackageBlueprintVersionAuthConfigVersions> for VersionedPackageBlueprintVersionAuthConfig

Source§

impl AsRef<PackageBlueprintVersionDefinitionVersions> for VersionedPackageBlueprintVersionDefinition

Source§

impl AsRef<PackageBlueprintVersionDependenciesVersions> for VersionedPackageBlueprintVersionDependencies

Source§

impl AsRef<PackageBlueprintVersionRoyaltyConfigVersions> for VersionedPackageBlueprintVersionRoyaltyConfig

Source§

impl AsRef<PackageCodeInstrumentedCodeVersions> for VersionedPackageCodeInstrumentedCode

Source§

impl AsRef<PackageCodeOriginalCodeVersions> for VersionedPackageCodeOriginalCode

Source§

impl AsRef<PackageCodeVmTypeVersions> for VersionedPackageCodeVmType

Source§

impl AsRef<PackageRoyaltyAccumulatorVersions> for VersionedPackageRoyaltyAccumulator

Source§

impl AsRef<ProtocolUpdateStatusSummaryVersions> for ProtocolUpdateStatusSummarySubstate

Source§

impl AsRef<ResourceOrNonFungible> for AccountAuthorizedDepositorKeyPayload

Source§

impl AsRef<ValidatorProtocolUpdateReadinessSignalVersions> for VersionedValidatorProtocolUpdateReadinessSignal

Source§

impl AsRef<ValidatorStateVersions> for VersionedValidatorState

Source§

impl AsRef<AccountAuthorizedDepositorVersions> for VersionedAccountAuthorizedDepositor

Source§

impl AsRef<AccountDepositRuleVersions> for VersionedAccountDepositRule

Source§

impl AsRef<AccountResourcePreferenceVersions> for VersionedAccountResourcePreference

Source§

impl AsRef<AccountResourceVaultVersions> for VersionedAccountResourceVault

Source§

impl AsRef<AccountLockerAccountClaimsVersions> for VersionedAccountLockerAccountClaims

Source§

impl AsRef<MetadataEntryVersions> for VersionedMetadataEntry

Source§

impl AsRef<RoleAssignmentAccessRuleVersions> for VersionedRoleAssignmentAccessRule

Source§

impl AsRef<RoleAssignmentOwnerVersions> for VersionedRoleAssignmentOwner

Source§

impl AsRef<ComponentRoyaltyAccumulatorVersions> for VersionedComponentRoyaltyAccumulator

Source§

impl AsRef<ComponentRoyaltyMethodAmountVersions> for VersionedComponentRoyaltyMethodAmount

Source§

impl AsRef<TreeNodeVersions> for VersionedTreeNode

Source§

impl AsRef<TransactionValidationConfigurationVersions> for TransactionValidationConfigurationSubstate

Source§

impl AsRef<MultiResourcePoolStateVersions> for VersionedMultiResourcePoolState

Source§

impl AsRef<OneResourcePoolStateVersions> for VersionedOneResourcePoolState

Source§

impl AsRef<TwoResourcePoolStateVersions> for VersionedTwoResourcePoolState

Source§

impl AsRef<AccessControllerStateVersions> for VersionedAccessControllerState

Source§

impl AsRef<AccessControllerV2StateVersions> for VersionedAccessControllerV2State

1.0.0 (const: unstable) · Source§

impl AsRef<str> for str

Source§

impl AsRef<str> for AliasableString

Source§

impl AsRef<str> for InternalString

1.0.0 · Source§

impl AsRef<str> for String

Source§

impl AsRef<u8> for u5

Source§

impl AsRef<ByteStr> for str

Source§

impl AsRef<ByteStr> for ByteString

Source§

impl AsRef<ByteStr> for ByteStr

1.7.0 · Source§

impl AsRef<CStr> for CString

1.7.0 (const: unstable) · Source§

impl AsRef<CStr> for CStr

Source§

impl AsRef<LocalWaker> for Waker

1.0.0 · Source§

impl AsRef<OsStr> for Component<'_>

1.0.0 · Source§

impl AsRef<OsStr> for str

1.0.0 (const: unstable) · Source§

impl AsRef<OsStr> for OsStr

1.0.0 · Source§

impl AsRef<OsStr> for std::ffi::os_str::OsString

1.0.0 · Source§

impl AsRef<OsStr> for Components<'_>

1.0.0 · Source§

impl AsRef<OsStr> for std::path::Iter<'_>

1.0.0 (const: unstable) · Source§

impl AsRef<OsStr> for Path

1.0.0 · Source§

impl AsRef<OsStr> for PathBuf

Source§

impl AsRef<OsStr> for TempPath

1.0.0 · Source§

impl AsRef<OsStr> for String

1.8.0 · Source§

impl AsRef<Path> for Cow<'_, OsStr>

1.25.0 · Source§

impl AsRef<Path> for Component<'_>

1.0.0 · Source§

impl AsRef<Path> for str

1.0.0 (const: unstable) · Source§

impl AsRef<Path> for OsStr

1.0.0 · Source§

impl AsRef<Path> for std::ffi::os_str::OsString

1.0.0 · Source§

impl AsRef<Path> for Components<'_>

1.0.0 · Source§

impl AsRef<Path> for std::path::Iter<'_>

1.0.0 (const: unstable) · Source§

impl AsRef<Path> for Path

1.0.0 · Source§

impl AsRef<Path> for PathBuf

Source§

impl AsRef<Path> for DecInt

Source§

impl AsRef<Path> for TempDir

Source§

impl AsRef<Path> for TempPath

1.0.0 · Source§

impl AsRef<Path> for String

Source§

impl AsRef<VerifyingKey> for SigningKey

Source§

impl AsRef<OsStr> for fslock::unix::OsString

Source§

impl AsRef<Global<AccountMarker>> for AccountLockerAccountClaimsKeyPayload

Source§

impl AsRef<VersionedAccountAuthorizedDepositor> for AccountAuthorizedDepositorEntryPayload

Source§

impl AsRef<VersionedAccountDepositRule> for AccountDepositRuleFieldPayload

Source§

impl AsRef<VersionedAccountResourcePreference> for AccountResourcePreferenceEntryPayload

Source§

impl AsRef<VersionedAccountResourceVault> for AccountResourceVaultEntryPayload

Source§

impl AsRef<VersionedAccountLockerAccountClaims> for AccountLockerAccountClaimsEntryPayload

Source§

impl AsRef<VersionedMetadataEntry> for MetadataEntryEntryPayload

Source§

impl AsRef<VersionedRoleAssignmentAccessRule> for RoleAssignmentAccessRuleEntryPayload

Source§

impl AsRef<VersionedRoleAssignmentOwner> for RoleAssignmentOwnerFieldPayload

Source§

impl AsRef<VersionedComponentRoyaltyAccumulator> for ComponentRoyaltyAccumulatorFieldPayload

Source§

impl AsRef<VersionedComponentRoyaltyMethodAmount> for ComponentRoyaltyMethodAmountEntryPayload

Source§

impl AsRef<Uuid> for Braced

Source§

impl AsRef<Uuid> for Hyphenated

Source§

impl AsRef<Uuid> for Simple

Source§

impl AsRef<Uuid> for Urn

Source§

impl AsRef<Uuid> for Uuid

Source§

impl AsRef<BStr> for str

Source§

impl AsRef<BStr> for [u8]

Source§

impl AsRef<Bytes> for str

Source§

impl AsRef<Bytes> for [u8]

Source§

impl AsRef<VersionedMultiResourcePoolState> for MultiResourcePoolStateFieldPayload

Source§

impl AsRef<VersionedOneResourcePoolState> for OneResourcePoolStateFieldPayload

Source§

impl AsRef<VersionedTwoResourcePoolState> for TwoResourcePoolStateFieldPayload

Source§

impl AsRef<Bls12381G1PublicKey> for Bls12381G1PublicKey

Source§

impl AsRef<Bls12381G2Signature> for Bls12381G2Signature

Source§

impl AsRef<BlueprintVersionKey> for PackageBlueprintVersionAuthConfigKeyPayload

Source§

impl AsRef<BlueprintVersionKey> for PackageBlueprintVersionDefinitionKeyPayload

Source§

impl AsRef<BlueprintVersionKey> for PackageBlueprintVersionDependenciesKeyPayload

Source§

impl AsRef<BlueprintVersionKey> for PackageBlueprintVersionRoyaltyConfigKeyPayload

Source§

impl AsRef<Bucket> for FungibleBucket

Source§

impl AsRef<Bucket> for NonFungibleBucket

Source§

impl AsRef<CodeHash> for PackageCodeInstrumentedCodeKeyPayload

Source§

impl AsRef<CodeHash> for PackageCodeOriginalCodeKeyPayload

Source§

impl AsRef<CodeHash> for PackageCodeVmTypeKeyPayload

Source§

impl AsRef<ComponentAddress> for ConsensusManagerRegisteredValidatorByStakeKeyPayload

Source§

impl AsRef<Ed25519PublicKey> for Ed25519PublicKey

Source§

impl AsRef<Ed25519Signature> for Ed25519Signature

Source§

impl AsRef<ExecutableTransaction> for ExecutableTransaction

Source§

impl AsRef<Hash> for CodeHash

Source§

impl AsRef<Hash> for FlashTransactionHash

Source§

impl AsRef<Hash> for Hash

Source§

impl AsRef<Hash> for LedgerTransactionHash

Source§

impl AsRef<Hash> for NotarizedTransactionHash

Source§

impl AsRef<Hash> for RoundUpdateTransactionHash

Source§

impl AsRef<Hash> for SchemaHash

Source§

impl AsRef<Hash> for SignedTransactionIntentHash

Source§

impl AsRef<Hash> for SubintentHash

Source§

impl AsRef<Hash> for SystemTransactionHash

Source§

impl AsRef<Hash> for TransactionIntentHash

Source§

impl AsRef<ModuleRoleKey> for RoleAssignmentAccessRuleKeyPayload

Source§

impl AsRef<NodeId> for ComponentAddress

Source§

impl AsRef<NodeId> for GlobalAddress

Source§

impl AsRef<NodeId> for InternalAddress

Source§

impl AsRef<NodeId> for NodeId

Source§

impl AsRef<NodeId> for PackageAddress

Source§

impl AsRef<NodeId> for ResourceAddress

Source§

impl AsRef<Proof> for FungibleProof

Source§

impl AsRef<Proof> for NonFungibleProof

Source§

impl AsRef<RawNotarizedTransaction> for DetailedNotarizedTransactionV2

Source§

impl AsRef<RawNotarizedTransaction> for RawNotarizedTransaction

Source§

impl AsRef<ResourceAddress> for AccountResourcePreferenceKeyPayload

Source§

impl AsRef<ResourceAddress> for AccountResourceVaultKeyPayload

Source§

impl AsRef<SchemaHash> for PackageSchemaKeyPayload

Source§

impl AsRef<Secp256k1PublicKey> for Secp256k1PublicKey

Source§

impl AsRef<Secp256k1Signature> for Secp256k1Signature

Source§

impl AsRef<String> for MetadataEntryKeyPayload

Source§

impl AsRef<String> for ComponentRoyaltyMethodAmountKeyPayload

Source§

impl AsRef<VersionedConsensusManagerConfiguration> for ConsensusManagerConfigurationFieldPayload

Source§

impl AsRef<VersionedConsensusManagerCurrentProposalStatistic> for ConsensusManagerCurrentProposalStatisticFieldPayload

Source§

impl AsRef<VersionedConsensusManagerCurrentValidatorSet> for ConsensusManagerCurrentValidatorSetFieldPayload

Source§

impl AsRef<VersionedConsensusManagerProposerMilliTimestamp> for ConsensusManagerProposerMilliTimestampFieldPayload

Source§

impl AsRef<VersionedConsensusManagerProposerMinuteTimestamp> for ConsensusManagerProposerMinuteTimestampFieldPayload

Source§

impl AsRef<VersionedConsensusManagerRegisteredValidatorByStake> for ConsensusManagerRegisteredValidatorByStakeEntryPayload

Source§

impl AsRef<VersionedConsensusManagerState> for ConsensusManagerStateFieldPayload

Source§

impl AsRef<VersionedConsensusManagerValidatorRewards> for ConsensusManagerValidatorRewardsFieldPayload

Source§

impl AsRef<VersionedFungibleResourceManagerDivisibility> for FungibleResourceManagerDivisibilityFieldPayload

Source§

impl AsRef<VersionedFungibleResourceManagerTotalSupply> for FungibleResourceManagerTotalSupplyFieldPayload

Source§

impl AsRef<VersionedFungibleVaultBalance> for FungibleVaultBalanceFieldPayload

Source§

impl AsRef<VersionedFungibleVaultFreezeStatus> for FungibleVaultFreezeStatusFieldPayload

Source§

impl AsRef<VersionedFungibleVaultLockedBalance> for FungibleVaultLockedBalanceFieldPayload

Source§

impl AsRef<VersionedNonFungibleResourceManagerIdType> for NonFungibleResourceManagerIdTypeFieldPayload

Source§

impl AsRef<VersionedNonFungibleResourceManagerMutableFields> for NonFungibleResourceManagerMutableFieldsFieldPayload

Source§

impl AsRef<VersionedNonFungibleResourceManagerTotalSupply> for NonFungibleResourceManagerTotalSupplyFieldPayload

Source§

impl AsRef<VersionedNonFungibleVaultBalance> for NonFungibleVaultBalanceFieldPayload

Source§

impl AsRef<VersionedNonFungibleVaultFreezeStatus> for NonFungibleVaultFreezeStatusFieldPayload

Source§

impl AsRef<VersionedNonFungibleVaultLockedResource> for NonFungibleVaultLockedResourceFieldPayload

Source§

impl AsRef<VersionedNonFungibleVaultNonFungible> for NonFungibleVaultNonFungibleEntryPayload

Source§

impl AsRef<VersionedPackageBlueprintVersionAuthConfig> for PackageBlueprintVersionAuthConfigEntryPayload

Source§

impl AsRef<VersionedPackageBlueprintVersionDefinition> for PackageBlueprintVersionDefinitionEntryPayload

Source§

impl AsRef<VersionedPackageBlueprintVersionDependencies> for PackageBlueprintVersionDependenciesEntryPayload

Source§

impl AsRef<VersionedPackageBlueprintVersionRoyaltyConfig> for PackageBlueprintVersionRoyaltyConfigEntryPayload

Source§

impl AsRef<VersionedPackageCodeInstrumentedCode> for PackageCodeInstrumentedCodeEntryPayload

Source§

impl AsRef<VersionedPackageCodeOriginalCode> for PackageCodeOriginalCodeEntryPayload

Source§

impl AsRef<VersionedPackageCodeVmType> for PackageCodeVmTypeEntryPayload

Source§

impl AsRef<VersionedPackageRoyaltyAccumulator> for PackageRoyaltyAccumulatorFieldPayload

Source§

impl AsRef<VersionedSchema<ScryptoCustomSchema>> for PackageSchemaEntryPayload

Source§

impl AsRef<VersionedValidatorProtocolUpdateReadinessSignal> for ValidatorProtocolUpdateReadinessSignalFieldPayload

Source§

impl AsRef<VersionedValidatorState> for ValidatorStateFieldPayload

Source§

impl AsRef<VersionedAccessControllerState> for AccessControllerStateFieldPayload

Source§

impl AsRef<VersionedAccessControllerV2State> for AccessControllerV2StateFieldPayload

Source§

impl AsRef<[u8; 32]> for SecretKey

Source§

impl AsRef<[u8; 32]> for Message

Source§

impl AsRef<[u8; 64]> for ElligatorSwift

Source§

impl AsRef<[u8; 64]> for PublicKey

Source§

impl AsRef<[u8; 64]> for secp256k1_sys::Signature

Source§

impl AsRef<[u8; 64]> for XOnlyPublicKey

Source§

impl AsRef<[u8; 64]> for secp256k1::schnorr::Signature

Source§

impl AsRef<[u8; 65]> for RecoverableSignature

Source§

impl AsRef<[u8; 96]> for Keypair

1.0.0 (const: unstable) · Source§

impl AsRef<[u8]> for str

Source§

impl AsRef<[u8]> for ByteString

Source§

impl AsRef<[u8]> for ByteStr

Source§

impl AsRef<[u8]> for VerifyingKey

Source§

impl AsRef<[u8]> for RawManifest

Source§

impl AsRef<[u8]> for Literal

Source§

impl AsRef<[u8]> for SharedSecret

Source§

impl AsRef<[u8]> for SerializedSignature

Source§

impl AsRef<[u8]> for Uuid

Source§

impl AsRef<[u8]> for WabtBuf

Source§

impl AsRef<[u8]> for BStr

Source§

impl AsRef<[u8]> for Bytes

Source§

impl AsRef<[u8]> for Bls12381G1PublicKey

Source§

impl AsRef<[u8]> for Bls12381G2Signature

Source§

impl AsRef<[u8]> for CodeHash

Source§

impl AsRef<[u8]> for ComponentAddress

Source§

impl AsRef<[u8]> for Ed25519PublicKey

Source§

impl AsRef<[u8]> for Ed25519Signature

Source§

impl AsRef<[u8]> for FlashTransactionHash

Source§

impl AsRef<[u8]> for GlobalAddress

Source§

impl AsRef<[u8]> for Hash

Source§

impl AsRef<[u8]> for InternalAddress

Source§

impl AsRef<[u8]> for LedgerTransactionHash

Source§

impl AsRef<[u8]> for NodeId

Source§

impl AsRef<[u8]> for NotarizedTransactionHash

Source§

impl AsRef<[u8]> for PackageAddress

Source§

impl AsRef<[u8]> for RawFlashTransaction

Source§

impl AsRef<[u8]> for RawLedgerTransaction

Source§

impl AsRef<[u8]> for RawNotarizedTransaction

Source§

impl AsRef<[u8]> for RawPartialTransaction

Source§

impl AsRef<[u8]> for RawPreviewTransaction

Source§

impl AsRef<[u8]> for RawRoundUpdateTransactionV1

Source§

impl AsRef<[u8]> for RawSignedPartialTransaction

Source§

impl AsRef<[u8]> for RawSignedTransactionIntent

Source§

impl AsRef<[u8]> for RawSubintent

Source§

impl AsRef<[u8]> for RawSystemTransaction

Source§

impl AsRef<[u8]> for RawTransactionIntent

Source§

impl AsRef<[u8]> for ResourceAddress

Source§

impl AsRef<[u8]> for RoundUpdateTransactionHash

Source§

impl AsRef<[u8]> for SchemaHash

Source§

impl AsRef<[u8]> for Secp256k1PublicKey

Source§

impl AsRef<[u8]> for Secp256k1Signature

Source§

impl AsRef<[u8]> for SignedTransactionIntentHash

1.0.0 · Source§

impl AsRef<[u8]> for String

Source§

impl AsRef<[u8]> for SubintentHash

Source§

impl AsRef<[u8]> for SystemTransactionHash

Source§

impl AsRef<[u8]> for TransactionIntentHash

Source§

impl AsRef<dyn Error + Sync + Send> for Error

Source§

impl AsRef<dyn Error> for Error

1.55.0 · Source§

impl<'a> AsRef<str> for scrypto_test::prelude::rust::string::Drain<'a>

1.55.0 · Source§

impl<'a> AsRef<[u8]> for scrypto_test::prelude::rust::string::Drain<'a>

1.46.0 · Source§

impl<'a, T, A> AsRef<[T]> for scrypto_test::prelude::vec::Drain<'a, T, A>
where A: Allocator,

Source§

impl<'str> AsRef<OsStr> for EitherOsStr<'str>

Source§

impl<A> AsRef<[<A as Array>::Item]> for SmallVec<A>
where A: Array,

Source§

impl<Data> AsRef<Data> for NonFungibleResourceManagerDataEntryPayload<Data>

Source§

impl<F> AsRef<Path> for NamedTempFile<F>

Source§

impl<I> AsRef<I> for Located<I>

Source§

impl<I, S> AsRef<I> for Stateful<I, S>

Source§

impl<L, R> AsRef<str> for Either<L, R>
where L: AsRef<str>, R: AsRef<str>,

Source§

impl<L, R> AsRef<CStr> for Either<L, R>
where L: AsRef<CStr>, R: AsRef<CStr>,

Requires crate feature std.

Source§

impl<L, R> AsRef<OsStr> for Either<L, R>
where L: AsRef<OsStr>, R: AsRef<OsStr>,

Requires crate feature std.

Source§

impl<L, R> AsRef<Path> for Either<L, R>
where L: AsRef<Path>, R: AsRef<Path>,

Requires crate feature std.

Source§

impl<L, R, Target> AsRef<[Target]> for Either<L, R>
where L: AsRef<[Target]>, R: AsRef<[Target]>,

Source§

impl<L, R, Target> AsRef<Target> for Either<L, R>
where L: AsRef<Target>, R: AsRef<Target>,

Source§

impl<S> AsRef<SchemaVersions<S>> for VersionedSchema<S>
where S: CustomSchema,

Source§

impl<T> AsRef<[T; 1]> for GenericArray<T, UInt<UTerm, B1>>

Source§

impl<T> AsRef<[T; 2]> for GenericArray<T, UInt<UInt<UTerm, B1>, B0>>

Source§

impl<T> AsRef<[T; 3]> for GenericArray<T, UInt<UInt<UTerm, B1>, B1>>

Source§

impl<T> AsRef<[T; 4]> for GenericArray<T, UInt<UInt<UInt<UTerm, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 5]> for GenericArray<T, UInt<UInt<UInt<UTerm, B1>, B0>, B1>>

Source§

impl<T> AsRef<[T; 6]> for GenericArray<T, UInt<UInt<UInt<UTerm, B1>, B1>, B0>>

Source§

impl<T> AsRef<[T; 7]> for GenericArray<T, UInt<UInt<UInt<UTerm, B1>, B1>, B1>>

Source§

impl<T> AsRef<[T; 8]> for GenericArray<T, UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 9]> for GenericArray<T, UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B1>>

Source§

impl<T> AsRef<[T; 10]> for GenericArray<T, UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B0>>

Source§

impl<T> AsRef<[T; 11]> for GenericArray<T, UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B1>>

Source§

impl<T> AsRef<[T; 12]> for GenericArray<T, UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 13]> for GenericArray<T, UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B1>>

Source§

impl<T> AsRef<[T; 14]> for GenericArray<T, UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>>

Source§

impl<T> AsRef<[T; 15]> for GenericArray<T, UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B1>>

Source§

impl<T> AsRef<[T; 16]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 17]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>>

Source§

impl<T> AsRef<[T; 18]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B1>, B0>>

Source§

impl<T> AsRef<[T; 19]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B1>, B1>>

Source§

impl<T> AsRef<[T; 20]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 21]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B0>, B1>>

Source§

impl<T> AsRef<[T; 22]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B1>, B0>>

Source§

impl<T> AsRef<[T; 23]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B1>, B1>>

Source§

impl<T> AsRef<[T; 24]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 25]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B1>>

Source§

impl<T> AsRef<[T; 26]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B1>, B0>>

Source§

impl<T> AsRef<[T; 27]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B1>, B1>>

Source§

impl<T> AsRef<[T; 28]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 29]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B1>>

Source§

impl<T> AsRef<[T; 30]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B1>, B0>>

Source§

impl<T> AsRef<[T; 31]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B1>, B1>>

Source§

impl<T> AsRef<[T; 32]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 33]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B1>>

Source§

impl<T> AsRef<[T; 34]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B0>>

Source§

impl<T> AsRef<[T; 35]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B1>>

Source§

impl<T> AsRef<[T; 36]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 37]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B1>, B0>, B1>>

Source§

impl<T> AsRef<[T; 38]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B1>, B1>, B0>>

Source§

impl<T> AsRef<[T; 39]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B1>, B1>, B1>>

Source§

impl<T> AsRef<[T; 40]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 41]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B0>, B0>, B1>>

Source§

impl<T> AsRef<[T; 42]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B0>, B1>, B0>>

Source§

impl<T> AsRef<[T; 43]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B0>, B1>, B1>>

Source§

impl<T> AsRef<[T; 44]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 45]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B1>, B0>, B1>>

Source§

impl<T> AsRef<[T; 46]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B1>, B1>, B0>>

Source§

impl<T> AsRef<[T; 47]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B1>, B1>, B1>>

Source§

impl<T> AsRef<[T; 48]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 49]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B0>, B1>>

Source§

impl<T> AsRef<[T; 50]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B1>, B0>>

Source§

impl<T> AsRef<[T; 51]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B1>, B1>>

Source§

impl<T> AsRef<[T; 52]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 53]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B1>, B0>, B1>>

Source§

impl<T> AsRef<[T; 54]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B1>, B1>, B0>>

Source§

impl<T> AsRef<[T; 55]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B1>, B1>, B1>>

Source§

impl<T> AsRef<[T; 56]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 57]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B0>, B1>>

Source§

impl<T> AsRef<[T; 58]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B1>, B0>>

Source§

impl<T> AsRef<[T; 59]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B0>, B1>, B1>>

Source§

impl<T> AsRef<[T; 60]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 61]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B1>, B0>, B1>>

Source§

impl<T> AsRef<[T; 62]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B1>, B1>, B0>>

Source§

impl<T> AsRef<[T; 63]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B1>, B1>, B1>>

Source§

impl<T> AsRef<[T; 64]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 70]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B1>, B1>, B0>>

Source§

impl<T> AsRef<[T; 80]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B0>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 90]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B1>, B0>, B1>, B0>>

Source§

impl<T> AsRef<[T; 100]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 128]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 200]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B1>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 256]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 300]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B1>, B0>, B1>, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 400]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B0>, B0>, B1>, B0>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 500]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B1>, B1>, B0>, B1>, B0>, B0>>

Source§

impl<T> AsRef<[T; 512]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 1000]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B1>, B1>, B1>, B1>, B0>, B1>, B0>, B0>, B0>>

Source§

impl<T> AsRef<[T; 1024]> for GenericArray<T, UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>

1.0.0 (const: unstable) · Source§

impl<T> AsRef<[T]> for [T]

Source§

impl<T> AsRef<[T]> for AliasableVec<T>

1.13.0 · Source§

impl<T> AsRef<[T]> for scrypto_test::prelude::rust::slice::Iter<'_, T>

1.53.0 · Source§

impl<T> AsRef<[T]> for IterMut<'_, T>

1.0.0 (const: unstable) · Source§

impl<T> AsRef<T> for Cow<'_, T>
where T: ToOwned + ?Sized, <T as ToOwned>::Owned: Borrow<T>,

Source§

impl<T> AsRef<T> for AliasableBox<T>
where T: ?Sized,

Source§

impl<T> AsRef<T> for AliasableMut<'_, T>
where T: ?Sized,

Source§

impl<T> AsRef<T> for Owned<T>
where T: Pointable + ?Sized,

Source§

impl<T> AsRef<T> for Spanned<T>

Source§

impl<T> AsRef<T> for triomphe::arc::Arc<T>
where T: ?Sized,

1.0.0 · Source§

impl<T, A> AsRef<[T]> for Vec<T, A>
where A: Allocator,

1.46.0 · Source§

impl<T, A> AsRef<[T]> for IntoIter<T, A>
where A: Allocator,

1.0.0 · Source§

impl<T, A> AsRef<Vec<T, A>> for Vec<T, A>
where A: Allocator,

Source§

impl<T, A> AsRef<T> for UniqueRc<T, A>
where A: Allocator, T: ?Sized,

Source§

impl<T, A> AsRef<T> for UniqueArc<T, A>
where A: Allocator, T: ?Sized,

1.5.0 · Source§

impl<T, A> AsRef<T> for scrypto_test::prelude::Arc<T, A>
where A: Allocator, T: ?Sized,

1.5.0 · Source§

impl<T, A> AsRef<T> for Box<T, A>
where A: Allocator, T: ?Sized,

1.5.0 · Source§

impl<T, A> AsRef<T> for Rc<T, A>
where A: Allocator, T: ?Sized,

Source§

impl<T, N> AsRef<[T]> for GenericArray<T, N>
where N: ArrayLength<T>,

1.0.0 (const: unstable) · Source§

impl<T, U> AsRef<U> for &T
where T: AsRef<U> + ?Sized, U: ?Sized,

1.0.0 (const: unstable) · Source§

impl<T, U> AsRef<U> for &mut T
where T: AsRef<U> + ?Sized, U: ?Sized,

Source§

impl<T, Z> AsRef<T> for Zeroizing<Z>
where Z: AsRef<T> + Zeroize, T: ?Sized,

Source§

impl<T, const CAP: usize> AsRef<[T]> for ArrayVec<T, CAP>

Source§

impl<T, const N: usize> AsRef<[T; N]> for Simd<T, N>

1.0.0 (const: unstable) · Source§

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

Source§

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

Source§

impl<const CAP: usize> AsRef<str> for ArrayString<CAP>

Source§

impl<const CAP: usize> AsRef<Path> for ArrayString<CAP>