pub struct DeriveAndReportId<Params, ReportedId> {
pub params: Params,
/* private fields */
}
Expand description
The DeriveAndReportId
is an ID assignment approach intended to be used in
"create" strategies
.
It accepts the Params
and the Id
.
The ReportedId
value should be computed by the “create” strategy using the Params
value.
The “create” strategy should report the ReportedId
value upon successful asset creation.
An example of ID derivation is the creation of an NFT inside a collection using the
collection ID as Params
. The ReportedId
in this case is the full ID of the NFT.
Fields§
§params: Params
Implementations§
Source§impl<Params, ReportedId> DeriveAndReportId<Params, ReportedId>
impl<Params, ReportedId> DeriveAndReportId<Params, ReportedId>
Trait Implementations§
Source§impl<Params: Clone, ReportedId: Clone> Clone for DeriveAndReportId<Params, ReportedId>
impl<Params: Clone, ReportedId: Clone> Clone for DeriveAndReportId<Params, ReportedId>
Source§fn clone(&self) -> DeriveAndReportId<Params, ReportedId>
fn clone(&self) -> DeriveAndReportId<Params, ReportedId>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<Params, ReportedId> Debug for DeriveAndReportId<Params, ReportedId>
impl<Params, ReportedId> Debug for DeriveAndReportId<Params, ReportedId>
Source§impl<Params, ReportedId> Decode for DeriveAndReportId<Params, ReportedId>
impl<Params, ReportedId> Decode for DeriveAndReportId<Params, ReportedId>
Source§fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy,
) -> Result<Self, Error>
fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy, ) -> Result<Self, Error>
Attempt to deserialise the value from input.
Source§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,
Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
Source§impl<Params, ReportedId> Encode for DeriveAndReportId<Params, ReportedId>
impl<Params, ReportedId> Encode for DeriveAndReportId<Params, ReportedId>
Source§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
If possible give a hint of expected size of the encoding. Read more
Source§fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy,
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy, )
Convert self to a slice and append it to the destination.
Source§fn using_encoded<R, F>(&self, f: F) -> R
fn using_encoded<R, F>(&self, f: F) -> R
Convert self to a slice and then invoke the given closure with it.
Source§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Calculates the encoded size. Read more
Source§impl<Params, ReportedId> IdAssignment for DeriveAndReportId<Params, ReportedId>
impl<Params, ReportedId> IdAssignment for DeriveAndReportId<Params, ReportedId>
Source§type ReportedId = ReportedId
type ReportedId = ReportedId
The reported ID type. Read more
Source§impl<Params, ReportedId> MaxEncodedLen for DeriveAndReportId<Params, ReportedId>
impl<Params, ReportedId> MaxEncodedLen for DeriveAndReportId<Params, ReportedId>
Source§fn max_encoded_len() -> usize
fn max_encoded_len() -> usize
Upper bound, in bytes, of the maximum encoded size of this item.
Source§impl<Params: PartialEq, ReportedId: PartialEq> PartialEq for DeriveAndReportId<Params, ReportedId>
impl<Params: PartialEq, ReportedId: PartialEq> PartialEq for DeriveAndReportId<Params, ReportedId>
Source§fn eq(&self, other: &DeriveAndReportId<Params, ReportedId>) -> bool
fn eq(&self, other: &DeriveAndReportId<Params, ReportedId>) -> bool
Tests for
self
and other
values to be equal, and is used by ==
.Source§impl<Params, ReportedId> TypeInfo for DeriveAndReportId<Params, ReportedId>where
Params: TypeInfo + 'static,
PhantomData<ReportedId>: TypeInfo + 'static,
ReportedId: TypeInfo + 'static,
impl<Params, ReportedId> TypeInfo for DeriveAndReportId<Params, ReportedId>where
Params: TypeInfo + 'static,
PhantomData<ReportedId>: TypeInfo + 'static,
ReportedId: TypeInfo + 'static,
impl<Params, ReportedId> EncodeLike for DeriveAndReportId<Params, ReportedId>
impl<Params: Eq, ReportedId: Eq> Eq for DeriveAndReportId<Params, ReportedId>
impl<Params, ReportedId> StructuralPartialEq for DeriveAndReportId<Params, ReportedId>
Auto Trait Implementations§
impl<Params, ReportedId> Freeze for DeriveAndReportId<Params, ReportedId>where
Params: Freeze,
impl<Params, ReportedId> RefUnwindSafe for DeriveAndReportId<Params, ReportedId>where
Params: RefUnwindSafe,
ReportedId: RefUnwindSafe,
impl<Params, ReportedId> Send for DeriveAndReportId<Params, ReportedId>
impl<Params, ReportedId> Sync for DeriveAndReportId<Params, ReportedId>
impl<Params, ReportedId> Unpin for DeriveAndReportId<Params, ReportedId>
impl<Params, ReportedId> UnwindSafe for DeriveAndReportId<Params, ReportedId>where
Params: UnwindSafe,
ReportedId: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere
T: Decode,
Source§impl<T, U> DefensiveTruncateInto<U> for Twhere
U: DefensiveTruncateFrom<T>,
impl<T, U> DefensiveTruncateInto<U> for Twhere
U: DefensiveTruncateFrom<T>,
Source§fn defensive_truncate_into(self) -> U
fn defensive_truncate_into(self) -> U
Defensively truncate a value and convert it into its bounded form.
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
fn into_tuple(self) -> Dest
Source§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
Source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
Source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
Source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T
. Read moreSource§impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
type Error = <U as TryFromKey<T>>::Error
fn try_into_key(self) -> Result<U, <U as TryFromKey<T>>::Error>
Source§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
Source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.Source§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
Source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.