Trait scale_decode::IntoVisitor

source ·
pub trait IntoVisitor {
    type AnyVisitor<R: TypeResolver>: for<'scale, 'resolver> Visitor<Value<'scale, 'resolver> = Self, Error = Error, TypeResolver = R>;

    // Required method
    fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>;
}
Expand description

This trait can be implemented on any type that has an associated Visitor responsible for decoding SCALE encoded bytes to it whose error type is Error. Anything that implements this trait gets a DecodeAsType implementation for free.

Required Associated Types§

source

type AnyVisitor<R: TypeResolver>: for<'scale, 'resolver> Visitor<Value<'scale, 'resolver> = Self, Error = Error, TypeResolver = R>

The visitor type used to decode SCALE encoded bytes to Self.

Required Methods§

source

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

A means of obtaining this visitor.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl IntoVisitor for bool

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<bool, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for char

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<char, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for i8

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<i8, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for i16

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<i16, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for i32

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<i32, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for i64

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<i64, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for i128

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<i128, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for isize

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<isize, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for u8

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<u8, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for u16

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<u16, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for u32

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<u32, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for u64

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<u64, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for u128

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<u128, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for ()

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl IntoVisitor for usize

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<usize, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for String

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<String, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for Duration
where (u64, u32): IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Duration, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for H128

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<H128, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for H160

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<H160, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for H256

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<H256, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for H384

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<H384, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for H512

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<H512, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for H768

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<H768, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for Bits

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Bits, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for NonZeroI8

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<NonZero<i8>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for NonZeroI16

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<NonZero<i16>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for NonZeroI32

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<NonZero<i32>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for NonZeroI64

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<NonZero<i64>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for NonZeroI128

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<NonZero<i128>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for NonZeroU8

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<NonZero<u8>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for NonZeroU16

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<NonZero<u16>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for NonZeroU32

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<NonZero<u32>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for NonZeroU64

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<NonZero<u64>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl IntoVisitor for NonZeroU128

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<NonZero<u128>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<'a, T> IntoVisitor for Cow<'a, T>
where T: 'a + ToOwned + ?Sized, <T as ToOwned>::Owned: IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Cow<'a, T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<A> IntoVisitor for (A,)
where A: IntoVisitor,

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A,), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B> IntoVisitor for (A, B)
where A: IntoVisitor, B: IntoVisitor,

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C> IntoVisitor for (A, B, C)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D> IntoVisitor for (A, B, C, D)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E> IntoVisitor for (A, B, C, D, E)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F> IntoVisitor for (A, B, C, D, E, F)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G> IntoVisitor for (A, B, C, D, E, F, G)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H> IntoVisitor for (A, B, C, D, E, F, G, H)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I> IntoVisitor for (A, B, C, D, E, F, G, H, I)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H, I), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I, J> IntoVisitor for (A, B, C, D, E, F, G, H, I, J)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H, I, J), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I, J, K> IntoVisitor for (A, B, C, D, E, F, G, H, I, J, K)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H, I, J, K), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I, J, K, L> IntoVisitor for (A, B, C, D, E, F, G, H, I, J, K, L)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H, I, J, K, L), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M> IntoVisitor for (A, B, C, D, E, F, G, H, I, J, K, L, M)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H, I, J, K, L, M), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N> IntoVisitor for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H, I, J, K, L, M, N), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> IntoVisitor for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> IntoVisitor for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q> IntoVisitor for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R> IntoVisitor for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R)

§

type AnyVisitor<Resolver: TypeResolver> = BasicVisitor<(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R), Resolver>

source§

fn into_visitor<Resolver: TypeResolver>() -> Self::AnyVisitor<Resolver>

source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S> IntoVisitor for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S)

source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T> IntoVisitor for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T)

source§

impl<T> IntoVisitor for Option<T>
where T: IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Option<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for Box<T>
where T: IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Box<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for BinaryHeap<T>
where T: IntoVisitor + Ord,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<BinaryHeap<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for BTreeSet<T>
where T: IntoVisitor + Ord,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<BTreeSet<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for LinkedList<T>
where T: IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<LinkedList<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for VecDeque<T>
where T: IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<VecDeque<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for Rc<T>
where T: IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Rc<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for Arc<T>
where T: IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Arc<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for Vec<T>
where T: IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Vec<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for PhantomData<T>

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<PhantomData<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for Range<T>

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Range<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for RangeInclusive<T>

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<RangeInclusive<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T> IntoVisitor for Compact<T>
where T: IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Compact<T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T, E> IntoVisitor for Result<T, E>
where T: IntoVisitor, E: IntoVisitor,

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<Result<T, E>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

impl<T: IntoVisitor> IntoVisitor for BTreeMap<String, T>

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<BTreeMap<String, T>, R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

source§

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

§

type AnyVisitor<R: TypeResolver> = BasicVisitor<[T; N], R>

source§

fn into_visitor<R: TypeResolver>() -> Self::AnyVisitor<R>

Implementors§