Skip to main content

CompactAs

Trait CompactAs 

Source
pub trait CompactAs: From<Compact<Self>> {
    type As;

    // Required methods
    fn encode_as(&self) -> &Self::As;
    fn decode_from(_: Self::As) -> Result<Self, Error>;
}
Expand description

Allow foreign structs to be wrap in Compact

Required Associated Types§

Source

type As

A compact-encodable type that should be used as the encoding.

Required Methods§

Source

fn encode_as(&self) -> &Self::As

Returns the compact-encodable type.

Source

fn decode_from(_: Self::As) -> Result<Self, Error>

Decode Self from the compact-decoded type.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl CompactAs for FixedI64

Source§

impl CompactAs for FixedI128

Source§

impl CompactAs for FixedU64

Source§

impl CompactAs for FixedU128

Source§

impl CompactAs for PerU16

Implementation makes any compact encoding of PerThing::Inner valid, when decoding it will saturate up to PerThing::ACCURACY.

Source§

impl CompactAs for Perbill

Implementation makes any compact encoding of PerThing::Inner valid, when decoding it will saturate up to PerThing::ACCURACY.

Source§

impl CompactAs for Percent

Implementation makes any compact encoding of PerThing::Inner valid, when decoding it will saturate up to PerThing::ACCURACY.

Source§

type As = u8

Source§

impl CompactAs for Permill

Implementation makes any compact encoding of PerThing::Inner valid, when decoding it will saturate up to PerThing::ACCURACY.

Source§

impl CompactAs for Perquintill

Implementation makes any compact encoding of PerThing::Inner valid, when decoding it will saturate up to PerThing::ACCURACY.

Source§

impl<T, D> CompactAs for TypeWithDefault<T, D>
where T: HasCompact, D: Get<T>,

Source§

type As = T