Struct dock_runtime::trust_registry::TrustRegistryId
source · pub struct TrustRegistryId(pub [u8; 32]);
Expand description
Unique identifier for the TrustRegistry
.
Tuple Fields§
§0: [u8; 32]
Methods from Deref<Target = [u8; 32]>§
1.57.0 · sourcepub fn as_slice(&self) -> &[T] ⓘ
pub fn as_slice(&self) -> &[T] ⓘ
Returns a slice containing the entire array. Equivalent to &s[..]
.
1.57.0 · sourcepub fn as_mut_slice(&mut self) -> &mut [T] ⓘ
pub fn as_mut_slice(&mut self) -> &mut [T] ⓘ
Returns a mutable slice containing the entire array. Equivalent to
&mut s[..]
.
sourcepub fn each_ref(&self) -> [&T; N]
🔬This is a nightly-only experimental API. (array_methods
)
pub fn each_ref(&self) -> [&T; N]
array_methods
)Borrows each element and returns an array of references with the same
size as self
.
Example
#![feature(array_methods)]
let floats = [3.1, 2.7, -1.0];
let float_refs: [&f64; 3] = floats.each_ref();
assert_eq!(float_refs, [&3.1, &2.7, &-1.0]);
This method is particularly useful if combined with other methods, like
map
. This way, you can avoid moving the original
array if its elements are not Copy
.
#![feature(array_methods)]
let strings = ["Ferris".to_string(), "♥".to_string(), "Rust".to_string()];
let is_ascii = strings.each_ref().map(|s| s.is_ascii());
assert_eq!(is_ascii, [true, false, true]);
// We can still access the original array: it has not been moved.
assert_eq!(strings.len(), 3);
sourcepub fn each_mut(&mut self) -> [&mut T; N]
🔬This is a nightly-only experimental API. (array_methods
)
pub fn each_mut(&mut self) -> [&mut T; N]
array_methods
)Borrows each element mutably and returns an array of mutable references
with the same size as self
.
Example
#![feature(array_methods)]
let mut floats = [3.1, 2.7, -1.0];
let float_refs: [&mut f64; 3] = floats.each_mut();
*float_refs[0] = 0.0;
assert_eq!(float_refs, [&mut 0.0, &mut 2.7, &mut -1.0]);
assert_eq!(floats, [0.0, 2.7, -1.0]);
sourcepub fn split_array_ref<const M: usize>(&self) -> (&[T; M], &[T])
🔬This is a nightly-only experimental API. (split_array
)
pub fn split_array_ref<const M: usize>(&self) -> (&[T; M], &[T])
split_array
)Divides one array reference into two at an index.
The first will contain all indices from [0, M)
(excluding
the index M
itself) and the second will contain all
indices from [M, N)
(excluding the index N
itself).
Panics
Panics if M > N
.
Examples
#![feature(split_array)]
let v = [1, 2, 3, 4, 5, 6];
{
let (left, right) = v.split_array_ref::<0>();
assert_eq!(left, &[]);
assert_eq!(right, &[1, 2, 3, 4, 5, 6]);
}
{
let (left, right) = v.split_array_ref::<2>();
assert_eq!(left, &[1, 2]);
assert_eq!(right, &[3, 4, 5, 6]);
}
{
let (left, right) = v.split_array_ref::<6>();
assert_eq!(left, &[1, 2, 3, 4, 5, 6]);
assert_eq!(right, &[]);
}
sourcepub fn split_array_mut<const M: usize>(&mut self) -> (&mut [T; M], &mut [T])
🔬This is a nightly-only experimental API. (split_array
)
pub fn split_array_mut<const M: usize>(&mut self) -> (&mut [T; M], &mut [T])
split_array
)Divides one mutable array reference into two at an index.
The first will contain all indices from [0, M)
(excluding
the index M
itself) and the second will contain all
indices from [M, N)
(excluding the index N
itself).
Panics
Panics if M > N
.
Examples
#![feature(split_array)]
let mut v = [1, 0, 3, 0, 5, 6];
let (left, right) = v.split_array_mut::<2>();
assert_eq!(left, &mut [1, 0][..]);
assert_eq!(right, &mut [3, 0, 5, 6]);
left[1] = 2;
right[1] = 4;
assert_eq!(v, [1, 2, 3, 4, 5, 6]);
sourcepub fn rsplit_array_ref<const M: usize>(&self) -> (&[T], &[T; M])
🔬This is a nightly-only experimental API. (split_array
)
pub fn rsplit_array_ref<const M: usize>(&self) -> (&[T], &[T; M])
split_array
)Divides one array reference into two at an index from the end.
The first will contain all indices from [0, N - M)
(excluding
the index N - M
itself) and the second will contain all
indices from [N - M, N)
(excluding the index N
itself).
Panics
Panics if M > N
.
Examples
#![feature(split_array)]
let v = [1, 2, 3, 4, 5, 6];
{
let (left, right) = v.rsplit_array_ref::<0>();
assert_eq!(left, &[1, 2, 3, 4, 5, 6]);
assert_eq!(right, &[]);
}
{
let (left, right) = v.rsplit_array_ref::<2>();
assert_eq!(left, &[1, 2, 3, 4]);
assert_eq!(right, &[5, 6]);
}
{
let (left, right) = v.rsplit_array_ref::<6>();
assert_eq!(left, &[]);
assert_eq!(right, &[1, 2, 3, 4, 5, 6]);
}
sourcepub fn rsplit_array_mut<const M: usize>(&mut self) -> (&mut [T], &mut [T; M])
🔬This is a nightly-only experimental API. (split_array
)
pub fn rsplit_array_mut<const M: usize>(&mut self) -> (&mut [T], &mut [T; M])
split_array
)Divides one mutable array reference into two at an index from the end.
The first will contain all indices from [0, N - M)
(excluding
the index N - M
itself) and the second will contain all
indices from [N - M, N)
(excluding the index N
itself).
Panics
Panics if M > N
.
Examples
#![feature(split_array)]
let mut v = [1, 0, 3, 0, 5, 6];
let (left, right) = v.rsplit_array_mut::<4>();
assert_eq!(left, &mut [1, 0]);
assert_eq!(right, &mut [3, 0, 5, 6][..]);
left[1] = 2;
right[1] = 4;
assert_eq!(v, [1, 2, 3, 4, 5, 6]);
Trait Implementations§
source§impl<T> Associated<T> for TrustRegistryIdwhere
T: Limits,
impl<T> Associated<T> for TrustRegistryIdwhere T: Limits,
§type Value = TrustRegistryInfo<T>
type Value = TrustRegistryInfo<T>
Self
.source§impl<T> AuthorizeTarget<T, TrustRegistryId, DidKey> for Convenerwhere
T: Config,
TrustRegistryId: Associated<T, Value = TrustRegistryInfo<T>>,
impl<T> AuthorizeTarget<T, TrustRegistryId, DidKey> for Convenerwhere T: Config, TrustRegistryId: Associated<T, Value = TrustRegistryInfo<T>>,
Self
can perform supplied action over target
using the provided key.source§impl<T> AuthorizeTarget<T, TrustRegistryId, DidKey> for ConvenerOrIssuerOrVerifierwhere
T: TypesAndLimits,
impl<T> AuthorizeTarget<T, TrustRegistryId, DidKey> for ConvenerOrIssuerOrVerifierwhere T: TypesAndLimits,
Self
can perform supplied action over target
using the provided key.source§impl<T> AuthorizeTarget<T, TrustRegistryId, DidKey> for Issuerwhere
T: TypesAndLimits,
impl<T> AuthorizeTarget<T, TrustRegistryId, DidKey> for Issuerwhere T: TypesAndLimits,
Self
can perform supplied action over target
using the provided key.source§impl<T> AuthorizeTarget<T, TrustRegistryId, DidKey> for IssuerOrVerifierwhere
T: TypesAndLimits,
impl<T> AuthorizeTarget<T, TrustRegistryId, DidKey> for IssuerOrVerifierwhere T: TypesAndLimits,
Self
can perform supplied action over target
using the provided key.source§impl<T> AuthorizeTarget<T, TrustRegistryId, DidMethodKey> for Convenerwhere
T: Config,
TrustRegistryId: Associated<T, Value = TrustRegistryInfo<T>>,
impl<T> AuthorizeTarget<T, TrustRegistryId, DidMethodKey> for Convenerwhere T: Config, TrustRegistryId: Associated<T, Value = TrustRegistryInfo<T>>,
Self
can perform supplied action over target
using the provided key.source§impl<T> AuthorizeTarget<T, TrustRegistryId, DidMethodKey> for ConvenerOrIssuerOrVerifierwhere
T: TypesAndLimits,
impl<T> AuthorizeTarget<T, TrustRegistryId, DidMethodKey> for ConvenerOrIssuerOrVerifierwhere T: TypesAndLimits,
Self
can perform supplied action over target
using the provided key.source§impl<T> AuthorizeTarget<T, TrustRegistryId, DidMethodKey> for Issuerwhere
T: TypesAndLimits,
impl<T> AuthorizeTarget<T, TrustRegistryId, DidMethodKey> for Issuerwhere T: TypesAndLimits,
Self
can perform supplied action over target
using the provided key.source§impl<T> AuthorizeTarget<T, TrustRegistryId, DidMethodKey> for IssuerOrVerifierwhere
T: TypesAndLimits,
impl<T> AuthorizeTarget<T, TrustRegistryId, DidMethodKey> for IssuerOrVerifierwhere T: TypesAndLimits,
Self
can perform supplied action over target
using the provided key.source§impl Clone for TrustRegistryId
impl Clone for TrustRegistryId
source§fn clone(&self) -> TrustRegistryId
fn clone(&self) -> TrustRegistryId
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for TrustRegistryId
impl Debug for TrustRegistryId
source§impl Decode for TrustRegistryId
impl Decode for TrustRegistryId
source§fn decode<__CodecInputEdqy>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<TrustRegistryId, Error>where
__CodecInputEdqy: Input,
fn decode<__CodecInputEdqy>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<TrustRegistryId, Error>where __CodecInputEdqy: Input,
§fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>
) -> Result<DecodeFinished, Error>where
I: Input,
fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>where I: Input,
§fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error>where I: Input,
§fn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
source§impl Deref for TrustRegistryId
impl Deref for TrustRegistryId
source§impl DerefMut for TrustRegistryId
impl DerefMut for TrustRegistryId
source§impl<'de> Deserialize<'de> for TrustRegistryId
impl<'de> Deserialize<'de> for TrustRegistryId
source§fn deserialize<__D>(
__deserializer: __D
) -> Result<TrustRegistryId, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>( __deserializer: __D ) -> Result<TrustRegistryId, <__D as Deserializer<'de>>::Error>where __D: Deserializer<'de>,
source§impl Encode for TrustRegistryId
impl Encode for TrustRegistryId
source§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
source§fn encode_to<__CodecOutputEdqy>(&self, __codec_dest_edqy: &mut __CodecOutputEdqy)where
__CodecOutputEdqy: Output + ?Sized,
fn encode_to<__CodecOutputEdqy>(&self, __codec_dest_edqy: &mut __CodecOutputEdqy)where __CodecOutputEdqy: Output + ?Sized,
source§fn using_encoded<R, F>(&self, f: F) -> Rwhere
F: FnOnce(&[u8]) -> R,
fn using_encoded<R, F>(&self, f: F) -> Rwhere F: FnOnce(&[u8]) -> R,
§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
source§impl From<TrustRegistryId> for TrustRegistryIdForParticipants
impl From<TrustRegistryId> for TrustRegistryIdForParticipants
source§fn from(value: TrustRegistryId) -> TrustRegistryIdForParticipants
fn from(value: TrustRegistryId) -> TrustRegistryIdForParticipants
source§impl From<TrustRegistryIdForParticipants> for TrustRegistryId
impl From<TrustRegistryIdForParticipants> for TrustRegistryId
source§fn from(wrapper: TrustRegistryIdForParticipants) -> TrustRegistryId
fn from(wrapper: TrustRegistryIdForParticipants) -> TrustRegistryId
source§impl MaxEncodedLen for TrustRegistryId
impl MaxEncodedLen for TrustRegistryId
source§fn max_encoded_len() -> usize
fn max_encoded_len() -> usize
source§impl Ord for TrustRegistryId
impl Ord for TrustRegistryId
source§fn cmp(&self, other: &TrustRegistryId) -> Ordering
fn cmp(&self, other: &TrustRegistryId) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
source§impl PartialEq<TrustRegistryId> for TrustRegistryId
impl PartialEq<TrustRegistryId> for TrustRegistryId
source§fn eq(&self, other: &TrustRegistryId) -> bool
fn eq(&self, other: &TrustRegistryId) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<TrustRegistryId> for TrustRegistryId
impl PartialOrd<TrustRegistryId> for TrustRegistryId
source§fn partial_cmp(&self, other: &TrustRegistryId) -> Option<Ordering>
fn partial_cmp(&self, other: &TrustRegistryId) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl Serialize for TrustRegistryId
impl Serialize for TrustRegistryId
source§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>( &self, __serializer: __S ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where __S: Serializer,
source§impl<T> StorageRef<T> for TrustRegistryIdwhere
T: Config,
impl<T> StorageRef<T> for TrustRegistryIdwhere T: Config,
source§fn try_mutate_associated<F, R, E>(self, f: F) -> Result<R, E>where
F: FnOnce(&mut Option<TrustRegistryInfo<T>>) -> Result<R, E>,
fn try_mutate_associated<F, R, E>(self, f: F) -> Result<R, E>where F: FnOnce(&mut Option<TrustRegistryInfo<T>>) -> Result<R, E>,
Self
.
If the value under the option is taken, the associated value will be removed.
All updates will be applied only in case of a successful result.source§fn view_associated<F, R>(self, f: F) -> Rwhere
F: FnOnce(Option<TrustRegistryInfo<T>>) -> R,
fn view_associated<F, R>(self, f: F) -> Rwhere F: FnOnce(Option<TrustRegistryInfo<T>>) -> R,
source§impl TypeInfo for TrustRegistryId
impl TypeInfo for TrustRegistryId
impl Copy for TrustRegistryId
impl EncodeLike<TrustRegistryId> for TrustRegistryId
impl Eq for TrustRegistryId
impl StructuralEq for TrustRegistryId
impl StructuralPartialEq for TrustRegistryId
Auto Trait Implementations§
impl RefUnwindSafe for TrustRegistryId
impl Send for TrustRegistryId
impl Sync for TrustRegistryId
impl Unpin for TrustRegistryId
impl UnwindSafe for TrustRegistryId
Blanket Implementations§
source§impl<T> CanUpdate<()> for T
impl<T> CanUpdate<()> for T
source§fn can_remove(&self, _entity: &()) -> bool
fn can_remove(&self, _entity: &()) -> bool
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where Self: TryInto<T>,
§impl<T> DecodeAll for Twhere
T: Decode,
impl<T> DecodeAll for Twhere T: Decode,
§fn decode_all(input: &mut &[u8]) -> Result<T, Error>
fn decode_all(input: &mut &[u8]) -> Result<T, Error>
Self
and consume all of the given input data. Read more§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere T: Decode,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<T> Hashable for Twhere
T: Codec,
impl<T> Hashable for Twhere T: Codec,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> IsType<T> for T
impl<T> IsType<T> for T
§impl<T> KeyedVec for Twhere
T: Codec,
impl<T> KeyedVec for Twhere T: Codec,
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,
T
. Read more§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T
.