Trait Encode

Source
pub trait Encode<X, E>
where X: CustomValueKind, E: Encoder<X>,
{ // Required methods fn encode_value_kind(&self, encoder: &mut E) -> Result<(), EncodeError>; fn encode_body(&self, encoder: &mut E) -> Result<(), EncodeError>; }
Expand description

A data structure that can be serialized into a byte array using SBOR.

Required Methods§

Source

fn encode_value_kind(&self, encoder: &mut E) -> Result<(), EncodeError>

Encodes the SBOR value’s kind to the encoder

Source

fn encode_body(&self, encoder: &mut E) -> Result<(), EncodeError>

Encodes the SBOR body of the type to the encoder.

You may want to call encoder.encode_deeper_body instead of this method. See the below section for details.

§Direct calls and SBOR Depth

In order to avoid SBOR depth differentials and disagreement about whether a payload is valid, typed codec implementations should ensure that the SBOR depth as measured during the encoding/decoding process agrees with the Value codec.

Each layer of the Value counts as one depth.

If the encoder you’re writing is embedding a child type (and is represented as such in the Value type), then you should call encoder.encode_body to increment the SBOR depth tracker.

You should only call value.encode_body directly when the encoding of that type into an Value doesn’t increase the SBOR depth in the encoder, that is:

  • When the wrapping type is invisible to the Value, ie:
    • Smart pointers
    • Transparent wrappers
  • Where the use of the inner type is invisible to Value, ie:
    • Where the use of value.encode_body is coincidental / code re-use

Implementations on Foreign Types§

Source§

impl<'a, X, E, T> Encode<X, E> for &T
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E> + ?Sized,

Source§

impl<X, E> Encode<X, E> for bool
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for i8
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for i16
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for i32
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for i64
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for i128
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for isize
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for str
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for u8
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for u16
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for u32
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for u64
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for u128
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for ()
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for usize
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E, T0> Encode<X, E> for (T0,)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>,

Source§

impl<X, E, T0, T1> Encode<X, E> for (T0, T1)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2> Encode<X, E> for (T0, T1, T2)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3> Encode<X, E> for (T0, T1, T2, T3)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4> Encode<X, E> for (T0, T1, T2, T3, T4)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5> Encode<X, E> for (T0, T1, T2, T3, T4, T5)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>, T10: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>, T10: Encode<X, E>, T11: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>, T10: Encode<X, E>, T11: Encode<X, E>, T12: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>, T10: Encode<X, E>, T11: Encode<X, E>, T12: Encode<X, E>, T13: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>, T10: Encode<X, E>, T11: Encode<X, E>, T12: Encode<X, E>, T13: Encode<X, E>, T14: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>, T10: Encode<X, E>, T11: Encode<X, E>, T12: Encode<X, E>, T13: Encode<X, E>, T14: Encode<X, E>, T15: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>, T10: Encode<X, E>, T11: Encode<X, E>, T12: Encode<X, E>, T13: Encode<X, E>, T14: Encode<X, E>, T15: Encode<X, E>, T16: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>, T10: Encode<X, E>, T11: Encode<X, E>, T12: Encode<X, E>, T13: Encode<X, E>, T14: Encode<X, E>, T15: Encode<X, E>, T16: Encode<X, E>, T17: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>, T10: Encode<X, E>, T11: Encode<X, E>, T12: Encode<X, E>, T13: Encode<X, E>, T14: Encode<X, E>, T15: Encode<X, E>, T16: Encode<X, E>, T17: Encode<X, E>, T18: Encode<X, E>,

Source§

impl<X, E, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> Encode<X, E> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19)
where X: CustomValueKind, E: Encoder<X>, T0: Encode<X, E>, T1: Encode<X, E>, T2: Encode<X, E>, T3: Encode<X, E>, T4: Encode<X, E>, T5: Encode<X, E>, T6: Encode<X, E>, T7: Encode<X, E>, T8: Encode<X, E>, T9: Encode<X, E>, T10: Encode<X, E>, T11: Encode<X, E>, T12: Encode<X, E>, T13: Encode<X, E>, T14: Encode<X, E>, T15: Encode<X, E>, T16: Encode<X, E>, T17: Encode<X, E>, T18: Encode<X, E>, T19: Encode<X, E>,

Source§

impl<X, E, T> Encode<X, E> for [T]
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E> + Categorize<X>,

Source§

impl<X, E, T, const N: usize> Encode<X, E> for [T; N]
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E> + Categorize<X>,

Implementors§

Source§

impl<'a> Encode<ManifestCustomValueKind, VecEncoder<'a, ManifestCustomValueKind>> for ManifestArgs

Source§

impl<'a, X, E, B> Encode<X, E> for Cow<'a, B>
where X: CustomValueKind, E: Encoder<X>, B: 'a + ToOwned + Encode<X, E> + ?Sized,

Source§

impl<E, E0, X> Encode<X, E0> for TypeValidation<E>
where E: CustomTypeValidation + Encode<X, E0>, E0: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for ChildNames
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for DecodeError
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for EncodeError
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for LocalTypeId
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for NoCustomTypeKind
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for NoCustomTypeKindLabel
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for NoCustomTypeValidation
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for RustTypeId
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for SchemaValidationError
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for LengthValidation
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for NovelTypeMetadata
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for TypeMetadata
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E, X> Encode<X, E> for WellKnownTypeId
where E: Encoder<X>, X: CustomValueKind,

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestCustomValue

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for AllowedIds

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for LowerBound

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestAddress

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestBucketBatch

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestComponentAddress

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestExpression

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestGlobalAddress

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestNonFungibleLocalId

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestPackageAddress

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestProofBatch

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestResourceAddress

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestResourceConstraint

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for UpperBound

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for OwnValidation

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ReferenceValidation

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ScryptoCustomTypeKind

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ScryptoCustomTypeKindLabel

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ScryptoCustomTypeValidation

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for NonFungibleLocalId

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for GenericSubstitution

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for RoyaltyAmount

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for GeneralResourceConstraint

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestAddressReservation

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestBlobRef

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestBucket

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestDecimal

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestNamedAddress

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestPreciseDecimal

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestProof

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ManifestResourceConstraints

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for Reference

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for Decimal

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for PreciseDecimal

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for BlueprintId

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for BlueprintTypeIdentifier

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ComponentAddress

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for GlobalAddress

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for InternalAddress

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for NonFungibleGlobalId

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for PackageAddress

Source§

impl<E: Encoder<ManifestCustomValueKind>> Encode<ManifestCustomValueKind, E> for ResourceAddress

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ParseBlsPublicKeyError

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ParseBlsSignatureError

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ParseEd25519PublicKeyError

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ParseEd25519SignatureError

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ParseSecp256k1PublicKeyError

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ParseSecp256k1SignatureError

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for AllowedIds

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for LowerBound

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ManifestResourceConstraint

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ResourceConstraintError

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ResourceConstraintsError

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for UpperBound

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for OwnValidation

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ReferenceValidation

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ScryptoCustomTypeKind

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ScryptoCustomTypeKindLabel

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ScryptoCustomTypeValidation

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ScryptoCustomValue

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for NonFungibleLocalId

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for GenericSubstitution

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for GlobalCaller

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for RoyaltyAmount

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for GeneralResourceConstraint

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ManifestResourceConstraints

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for Own

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for Reference

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for Decimal

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for PreciseDecimal

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for BlueprintId

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for BlueprintTypeIdentifier

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ComponentAddress

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for GlobalAddress

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for GlobalAddressReservation

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for InternalAddress

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for NonFungibleGlobalId

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for PackageAddress

Source§

impl<E: Encoder<ScryptoCustomValueKind>> Encode<ScryptoCustomValueKind, E> for ResourceAddress

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for AlwaysVisibleGlobalNodesVersion

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for ParseHashError

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for PublicKey

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for PublicKeyHash

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for ScryptoCustomValueKind

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for NonFungibleIdType

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for RoundingMode

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for BatchPartitionStateUpdate

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for DatabaseUpdate

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for NodeStateUpdates

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for PartitionStateUpdates

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for TimeComparisonOperator

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for DateTimeError

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for EntityType

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for SubstateKey

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Bls12381G1PublicKey

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Bls12381G2Signature

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Ed25519PublicKey

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Ed25519PublicKeyHash

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Ed25519Signature

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Hash

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Secp256k1PublicKey

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Secp256k1PublicKeyHash

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Secp256k1Signature

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Secp256k1UncompressedPublicKey

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for NetworkDefinition

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for StateUpdates

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Instant

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for UtcDateTime

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Epoch

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for NodeId

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for PartitionNumber

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for PartitionOffset

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for Round

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for SchemaHash

Source§

impl<E: Encoder<X>, X: CustomValueKind> Encode<X, E> for ScopedTypeId

Source§

impl<Ext, E> Encode<<Ext as CustomExtension>::CustomValueKind, E> for RawPayload<'_, Ext>

Source§

impl<Ext, E> Encode<<Ext as CustomExtension>::CustomValueKind, E> for RawValue<'_, Ext>

Source§

impl<S, E, X> Encode<X, E> for SchemaVersions<S>

Source§

impl<S, E, X> Encode<X, E> for SchemaV1<S>

Source§

impl<S, E, X> Encode<X, E> for SingleTypeSchema<S>

Source§

impl<S, E, X> Encode<X, E> for TypeCollectionSchema<S>

Source§

impl<S, E, X> Encode<X, E> for VersionedSchema<S>

Source§

impl<T, E, X> Encode<X, E> for TypeKindLabel<T>
where T: CustomTypeKindLabel + Encode<X, E>, E: Encoder<X>, X: CustomValueKind,

Source§

impl<T, E, X> Encode<X, E> for NumericValidation<T>

Source§

impl<T, E: Encoder<X>, X: CustomValueKind> Encode<X, E> for FullyScopedTypeId<T>
where T: Encode<X, E> + AsRef<NodeId>,

Source§

impl<T, L, E, X> Encode<X, E> for TypeKind<T, L>
where T: CustomTypeKind<L> + Encode<X, E>, L: SchemaTypeLink + Encode<X, E> + Categorize<X>, E: Encoder<X>, X: CustomValueKind,

Source§

impl<X, E> Encode<X, E> for NoCustomValue
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E> Encode<X, E> for String
where X: CustomValueKind, E: Encoder<X>,

Source§

impl<X, E, K, V> Encode<X, E> for HashMap<K, V>
where X: CustomValueKind, E: Encoder<X>, K: Encode<X, E> + Categorize<X> + Ord + Hash, V: Encode<X, E> + Categorize<X>,

Source§

impl<X, E, K, V> Encode<X, E> for IndexMap<K, V>
where X: CustomValueKind, E: Encoder<X>, K: Encode<X, E> + Categorize<X> + Hash + Eq + PartialEq, V: Encode<X, E> + Categorize<X>,

Source§

impl<X, E, K, V> Encode<X, E> for BTreeMap<K, V>
where X: CustomValueKind, E: Encoder<X>, K: Encode<X, E> + Categorize<X>, V: Encode<X, E> + Categorize<X>,

Source§

impl<X, E, T> Encode<X, E> for Option<T>
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E>,

Source§

impl<X, E, T> Encode<X, E> for HashSet<T>
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E> + Categorize<X> + Ord + Hash,

Source§

impl<X, E, T> Encode<X, E> for IndexSet<T>
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E> + Categorize<X> + Hash,

Source§

impl<X, E, T> Encode<X, E> for Arc<T>
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E>,

Source§

impl<X, E, T> Encode<X, E> for BTreeSet<T>
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E> + Categorize<X>,

Source§

impl<X, E, T> Encode<X, E> for Box<T>
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E>,

Source§

impl<X, E, T> Encode<X, E> for Rc<T>
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E>,

Source§

impl<X, E, T> Encode<X, E> for RefCell<T>
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E>,

Source§

impl<X, E, T> Encode<X, E> for Vec<T>
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E> + Categorize<X>,

Source§

impl<X, E, Y> Encode<X, E> for Value<X, Y>
where X: CustomValueKind, E: Encoder<X>, Y: Encode<X, E> + CustomValue<X>,

Source§

impl<X, E, Y> Encode<X, E> for EnumVariantValue<X, Y>
where X: CustomValueKind, E: Encoder<X>, Y: Encode<X, E> + CustomValue<X>,

Source§

impl<X, E, const DISCRIMINATOR: u8, T> Encode<X, E> for SborFixedEnumVariant<DISCRIMINATOR, T>
where X: CustomValueKind, E: Encoder<X>, T: Encode<X, E> + SborTuple<X>,

Source§

impl<X, Enc, T, E> Encode<X, Enc> for Result<T, E>
where X: CustomValueKind, Enc: Encoder<X>, T: Encode<X, Enc>, E: Encode<X, Enc>,