Trait gclient::ext::sp_core::sp_std::convert::AsRef

1.0.0 · 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§

source

fn as_ref(&self) -> &T

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

Implementors§

§

impl AsRef<str> for gclient::ext::sp_runtime::offchain::http::Method

source§

impl AsRef<str> for webpki::subject_name::ip_address::IpAddr

source§

impl AsRef<str> for str

source§

impl AsRef<str> for String

source§

impl AsRef<str> for webpki::subject_name::dns_name::DnsName

Requires the alloc feature.

source§

impl AsRef<str> for HeaderName

source§

impl AsRef<str> for http::method::Method

source§

impl AsRef<str> for Authority

source§

impl AsRef<str> for Scheme

source§

impl AsRef<str> for Buffer

source§

impl AsRef<str> for Url

Return the serialization of this URL.

§

impl AsRef<str> for DnsName

§

impl AsRef<str> for DnsNameRef<'_>

§

impl AsRef<str> for Field

§

impl AsRef<str> for IpAddr

§

impl AsRef<str> for Mnemonic

§

impl AsRef<Pair> for gclient::ext::sp_runtime::app_crypto::ecdsa::AppPair

§

impl AsRef<Public> for gclient::ext::sp_runtime::app_crypto::ecdsa::AppPublic

§

impl AsRef<Signature> for gclient::ext::sp_runtime::app_crypto::ecdsa::AppSignature

§

impl AsRef<Pair> for gclient::ext::sp_runtime::app_crypto::ed25519::AppPair

§

impl AsRef<Public> for gclient::ext::sp_runtime::app_crypto::ed25519::AppPublic

§

impl AsRef<Signature> for gclient::ext::sp_runtime::app_crypto::ed25519::AppSignature

§

impl AsRef<Pair> for gclient::ext::sp_runtime::app_crypto::sr25519::AppPair

§

impl AsRef<Public> for gclient::ext::sp_runtime::app_crypto::sr25519::AppPublic

§

impl AsRef<Signature> for gclient::ext::sp_runtime::app_crypto::sr25519::AppSignature

§

impl AsRef<Duration> for Duration

§

impl AsRef<SystemTime> for Timestamp

§

impl AsRef<VrfTranscript> for VrfSignData

1.7.0 · source§

impl AsRef<CStr> for CString

1.7.0 · source§

impl AsRef<CStr> for CStr

source§

impl AsRef<OsStr> for Component<'_>

source§

impl AsRef<OsStr> for str

source§

impl AsRef<OsStr> for String

source§

impl AsRef<OsStr> for OsStr

source§

impl AsRef<OsStr> for OsString

source§

impl AsRef<OsStr> for Components<'_>

source§

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

source§

impl AsRef<OsStr> for Path

source§

impl AsRef<OsStr> for PathBuf

1.8.0 · source§

impl AsRef<Path> for gclient::ext::sp_core::bounded::alloc::borrow::Cow<'_, OsStr>

1.25.0 · source§

impl AsRef<Path> for Component<'_>

source§

impl AsRef<Path> for str

source§

impl AsRef<Path> for String

source§

impl AsRef<Path> for OsStr

source§

impl AsRef<Path> for OsString

source§

impl AsRef<Path> for Components<'_>

source§

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

source§

impl AsRef<Path> for Path

source§

impl AsRef<Path> for PathBuf

§

impl AsRef<BStr> for str

§

impl AsRef<BStr> for BStr

§

impl AsRef<BStr> for BString

§

impl AsRef<BStr> for [u8]

§

impl AsRef<Interval> for IntervalStream

§

impl AsRef<Keypair> for gclient::ext::sp_runtime::app_crypto::sr25519::Pair

§

impl AsRef<Semaphore> for PollSemaphore

§

impl AsRef<TcpStream> for OwnedReadHalf

§

impl AsRef<TcpStream> for OwnedWriteHalf

§

impl AsRef<TcpStream> for ReadHalf<'_>

§

impl AsRef<TcpStream> for WriteHalf<'_>

§

impl AsRef<UnixStream> for OwnedReadHalf

§

impl AsRef<UnixStream> for OwnedWriteHalf

§

impl AsRef<UnixStream> for ReadHalf<'_>

§

impl AsRef<UnixStream> for WriteHalf<'_>

§

impl AsRef<VerifyingKey> for SigningKey

source§

impl AsRef<[u8; 12]> for Nonce

§

impl AsRef<[u8; 32]> for gclient::ext::sp_runtime::app_crypto::ed25519::Public

§

impl AsRef<[u8; 32]> for gclient::ext::sp_runtime::app_crypto::sr25519::Public

§

impl AsRef<[u8; 32]> for gclient::ext::sp_runtime::AccountId32

§

impl AsRef<[u8; 32]> for AccountId32

§

impl AsRef<[u8; 32]> for Message

§

impl AsRef<[u8; 32]> for SecretKey

§

impl AsRef<[u8; 64]> for gclient::ext::sp_runtime::app_crypto::ed25519::Signature

§

impl AsRef<[u8; 64]> for gclient::ext::sp_runtime::app_crypto::sr25519::Signature

§

impl AsRef<[u8; 64]> for PublicKey

§

impl AsRef<[u8; 64]> for Signature

§

impl AsRef<[u8; 64]> for Signature

§

impl AsRef<[u8; 64]> for XOnlyPublicKey

§

impl AsRef<[u8; 65]> for gclient::ext::sp_runtime::app_crypto::ecdsa::Signature

§

impl AsRef<[u8; 65]> for RecoverableSignature

§

impl AsRef<[u8; 96]> for KeyPair

§

impl AsRef<[u8]> for MultiSigner

§

impl AsRef<[u8]> for RuntimeString

source§

impl AsRef<[u8]> for webpki::subject_name::name::SubjectNameRef<'_>

source§

impl AsRef<[u8]> for str

source§

impl AsRef<[u8]> for CodeId

source§

impl AsRef<[u8]> for MessageId

source§

impl AsRef<[u8]> for ProgramId

source§

impl AsRef<[u8]> for ReservationId

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::ecdsa::AppPublic

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::ecdsa::AppSignature

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::ecdsa::Public

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::ecdsa::Signature

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::ed25519::AppPublic

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::ed25519::AppSignature

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::ed25519::Public

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::ed25519::Signature

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::sr25519::AppPublic

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::sr25519::AppSignature

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::sr25519::Public

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::app_crypto::sr25519::Signature

§

impl AsRef<[u8]> for gclient::ext::sp_runtime::AccountId32

§

impl AsRef<[u8]> for H256

§

impl AsRef<[u8]> for UintAuthorityId

source§

impl AsRef<[u8]> for String

§

impl AsRef<[u8]> for Dummy

§

impl AsRef<[u8]> for StorageKey

§

impl AsRef<[u8]> for H160

§

impl AsRef<[u8]> for H512

source§

impl AsRef<[u8]> for ring::aead::Tag

source§

impl AsRef<[u8]> for ring::agreement::PublicKey

source§

impl AsRef<[u8]> for Digest

source§

impl AsRef<[u8]> for ring::hmac::Tag

source§

impl AsRef<[u8]> for Document

source§

impl AsRef<[u8]> for RsaSubjectPublicKey

source§

impl AsRef<[u8]> for ring::signature::Signature

source§

impl AsRef<[u8]> for webpki::subject_name::dns_name::DnsNameRef<'_>

source§

impl AsRef<[u8]> for h2::ext::Protocol

source§

impl AsRef<[u8]> for HeaderName

source§

impl AsRef<[u8]> for HeaderValue

§

impl AsRef<[u8]> for AccountId32

§

impl AsRef<[u8]> for BStr

§

impl AsRef<[u8]> for BString

§

impl AsRef<[u8]> for Blake2bResult

§

impl AsRef<[u8]> for Blake2sResult

§

impl AsRef<[u8]> for ByteSlice125<'_>

§

impl AsRef<[u8]> for Bytes

§

impl AsRef<[u8]> for BytesMut

§

impl AsRef<[u8]> for Certificate

§

impl AsRef<[u8]> for Certificate

§

impl AsRef<[u8]> for DistinguishedName

§

impl AsRef<[u8]> for H128

§

impl AsRef<[u8]> for H384

§

impl AsRef<[u8]> for H768

§

impl AsRef<[u8]> for Hash

§

impl AsRef<[u8]> for Literal

§

impl AsRef<[u8]> for Literal

§

impl AsRef<[u8]> for ObjectIdentifier

§

impl AsRef<[u8]> for PresharedKeyBinder

§

impl AsRef<[u8]> for Protocol

§

impl AsRef<[u8]> for ProtocolName

§

impl AsRef<[u8]> for PublicKey

§

impl AsRef<[u8]> for ReasonPhrase

§

impl AsRef<[u8]> for ResponderId

§

impl AsRef<[u8]> for Sct

§

impl AsRef<[u8]> for Seed

§

impl AsRef<[u8]> for SerializedSignature

§

impl AsRef<[u8]> for SharedSecret

§

impl AsRef<[u8]> for SignatureArray

§

impl AsRef<[u8]> for SigningKey

§

impl AsRef<[u8]> for Storage<'_>

§

impl AsRef<[u8]> for SubjectNameRef<'_>

§

impl AsRef<[u8]> for VerificationKey

§

impl AsRef<[u8]> for VerificationKeyBytes

§

impl AsRef<[u8]> for VerifyingKey

§

impl AsRef<[u8]> for WabtBuf

§

impl AsRef<[u64]> for U256

Get a reference to the underlying little-endian words.

§

impl AsRef<[u64]> for U512

Get a reference to the underlying little-endian words.

§

impl AsRef<[u64]> for U128

Get a reference to the underlying little-endian words.

source§

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

source§

impl AsRef<dyn Error> for Error

1.55.0 · source§

impl<'a> AsRef<str> for gclient::ext::sp_core::bounded::alloc::string::Drain<'a>

source§

impl<'a> AsRef<str> for DecimalStr<'a>

source§

impl<'a> AsRef<str> for InfinityStr<'a>

source§

impl<'a> AsRef<str> for MinusSignStr<'a>

source§

impl<'a> AsRef<str> for NanStr<'a>

source§

impl<'a> AsRef<str> for PlusSignStr<'a>

source§

impl<'a> AsRef<str> for SeparatorStr<'a>

1.55.0 · source§

impl<'a> AsRef<[u8]> for gclient::ext::sp_core::bounded::alloc::string::Drain<'a>

§

impl<'a> AsRef<[Value]> for RuntimeArgs<'a>

1.46.0 · source§

impl<'a, T, A> AsRef<[T]> for gclient::ext::sp_core::bounded::alloc::vec::Drain<'a, T, A>
where A: Allocator,

§

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

§

impl<'s, T> AsRef<[T]> for SliceVec<'s, T>

source§

impl<A> AsRef<str> for arrayvec::array_string::ArrayString<A>
where A: Array<Item = u8> + Copy,

source§

impl<A> AsRef<str> for arrayvec::array_string::ArrayString<A>
where A: Array<Item = u8>,

source§

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

source§

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

§

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

§

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

§

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

source§

impl<A> AsRef<[u8]> for Aad<A>
where A: AsRef<[u8]>,

§

impl<A, O> AsRef<BitSlice<<A as BitView>::Store, O>> for BitArray<A, O>
where A: BitViewSized, O: BitOrder,

§

impl<D> AsRef<[u8]> for SharedSecret<D>
where D: Digest,

§

impl<K, V, S> AsRef<BTreeMap<K, V>> for BoundedBTreeMap<K, V, S>
where K: Ord,

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 use_std.

source§

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

Requires crate feature use_std.

source§

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

Requires crate feature use_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>,

§

impl<M, T, O> AsRef<bool> for BitRef<'_, M, T, O>
where M: Mutability, T: BitStore, O: BitOrder,

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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>>

§

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>>

§

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>>

§

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>>

§

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>>

§

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>>

§

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>>

§

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>>

§

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>>

source§

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

1.13.0 · source§

impl<T> AsRef<[T]> for gclient::ext::sp_core::bounded::alloc::slice::Iter<'_, T>

1.53.0 · source§

impl<T> AsRef<[T]> for gclient::ext::sp_core::bounded::alloc::slice::IterMut<'_, T>

source§

impl<T> AsRef<str> for Port<T>
where T: AsRef<str>,

§

impl<T> AsRef<Receiver<T>> for ReceiverStream<T>

source§

impl<T> AsRef<T> for gclient::ext::sp_core::bounded::alloc::borrow::Cow<'_, T>
where T: ToOwned + ?Sized,

§

impl<T> AsRef<T> for FmtBinary<T>
where T: Binary,

§

impl<T> AsRef<T> for FmtDisplay<T>
where T: Display,

§

impl<T> AsRef<T> for FmtList<T>
where &'a T: for<'a> IntoIterator,

§

impl<T> AsRef<T> for FmtLowerExp<T>
where T: LowerExp,

§

impl<T> AsRef<T> for FmtLowerHex<T>
where T: LowerHex,

§

impl<T> AsRef<T> for FmtOctal<T>
where T: Octal,

§

impl<T> AsRef<T> for FmtPointer<T>
where T: Pointer,

§

impl<T> AsRef<T> for FmtUpperExp<T>
where T: UpperExp,

§

impl<T> AsRef<T> for FmtUpperHex<T>
where T: UpperHex,

§

impl<T> AsRef<UnboundedReceiver<T>> for UnboundedReceiverStream<T>

§

impl<T> AsRef<[u8]> for Window<T>
where T: AsRef<[u8]>,

source§

impl<T, A> AsRef<[T]> for gclient::ext::sp_runtime::app_crypto::Vec<T, A>
where A: Allocator,

1.46.0 · source§

impl<T, A> AsRef<[T]> for gclient::ext::sp_core::bounded::alloc::vec::IntoIter<T, A>
where A: Allocator,

§

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

§

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

source§

impl<T, A> AsRef<Vec<T, A>> for gclient::ext::sp_runtime::app_crypto::Vec<T, A>
where A: Allocator,

1.5.0 · source§

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

1.5.0 · source§

impl<T, A> AsRef<T> for gclient::ext::sp_core::sp_std::prelude::Box<T, A>
where A: Allocator, T: ?Sized,

1.5.0 · source§

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

§

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

§

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

§

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

§

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

§

impl<T, O> AsRef<BitSlice<<T as BitStore>::Alias, O>> for IterMut<'_, T, O>
where T: BitStore, O: BitOrder,

§

impl<T, O> AsRef<BitSlice<T, O>> for BitBox<T, O>
where T: BitStore, O: BitOrder,

§

impl<T, O> AsRef<BitSlice<T, O>> for BitSlice<T, O>
where T: BitStore, O: BitOrder,

§

impl<T, O> AsRef<BitSlice<T, O>> for BitVec<T, O>
where T: BitStore, O: BitOrder,

§

impl<T, O> AsRef<BitSlice<T, O>> for Drain<'_, T, O>
where T: BitStore, O: BitOrder,

§

impl<T, O> AsRef<BitSlice<T, O>> for IntoIter<T, O>
where T: BitStore, O: BitOrder,

§

impl<T, O> AsRef<BitSlice<T, O>> for Iter<'_, T, O>
where T: BitStore, O: BitOrder,

§

impl<T, O> AsRef<BitVec<T, O>> for BitVec<T, O>
where T: BitStore, O: BitOrder,

§

impl<T, S> AsRef<[T]> for BoundedVec<T, S>

§

impl<T, S> AsRef<[T]> for WeakBoundedVec<T, S>

§

impl<T, S> AsRef<Vec<T>> for BoundedVec<T, S>

§

impl<T, S> AsRef<Vec<T>> for WeakBoundedVec<T, S>

§

impl<T, S> AsRef<BTreeSet<T>> for BoundedBTreeSet<T, S>
where T: Ord,

§

impl<T, U> AsRef<T> for Cow<'_, T, U>
where T: Beef + ?Sized, U: Capacity,

source§

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

source§

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

§

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::arrayvec::ArrayVec<T, CAP>

source§

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

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 arrayvec::array_string::ArrayString<CAP>