Skip to main content

Decode

Trait Decode 

Source
pub(super) trait Decode<'a, 's, S>: Sized {
    // Required method
    fn decode(r: &mut &'a [u8], s: &'s mut S) -> Self;
}
🔬This is a nightly-only experimental API. (proc_macro_internals)

Required Methods§

Source

fn decode(r: &mut &'a [u8], s: &'s mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<'a, S, A: for<'s> Decode<'a, 's, S>, B: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for (A, B)

Source§

fn decode(r: &mut &'a [u8], s: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<'a, S, T: for<'s> Decode<'a, 's, S>, E: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for Result<T, E>

Source§

fn decode(r: &mut &'a [u8], s: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<'a, S, T: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for Bound<T>

Source§

fn decode(r: &mut &'a [u8], s: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<'a, S, T: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for Option<T>

Source§

fn decode(r: &mut &'a [u8], s: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<'a, S, T: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for Range<T>

Source§

fn decode(r: &mut &'a [u8], s: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<'a, S, T: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for Vec<T>

Source§

fn decode(r: &mut &'a [u8], s: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<'a, S> Decode<'a, '_, S> for &'a str

Source§

fn decode(r: &mut &'a [u8], s: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<S> Decode<'_, '_, S> for ()

Source§

fn decode(_: &mut &[u8], _: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<S> Decode<'_, '_, S> for NonZero<u32>

Source§

fn decode(r: &mut &[u8], s: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<S> Decode<'_, '_, S> for String

Source§

fn decode(r: &mut &[u8], s: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<S> Decode<'_, '_, S> for bool

Source§

fn decode(r: &mut &[u8], s: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<S> Decode<'_, '_, S> for u8

Source§

fn decode(r: &mut &[u8], _: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<S> Decode<'_, '_, S> for u32

Source§

fn decode(r: &mut &[u8], _: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)
Source§

impl<S> Decode<'_, '_, S> for usize

Source§

fn decode(r: &mut &[u8], _: &mut S) -> Self

🔬This is a nightly-only experimental API. (proc_macro_internals)

Implementors§

Source§

impl Decode<'_, '_, ()> for proc_macro::TokenStream

Source§

impl<'a, S, Span: for<'s> Decode<'a, 's, S>, Symbol: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for Ident<Span, Symbol>

Source§

impl<'a, S, Span: for<'s> Decode<'a, 's, S>, Symbol: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for Literal<Span, Symbol>

Source§

impl<'a, S, Span: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for DelimSpan<Span>

Source§

impl<'a, S, Span: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for Diagnostic<Span>

Source§

impl<'a, S, Span: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for ExpnGlobals<Span>

Source§

impl<'a, S, Span: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for Punct<Span>

Source§

impl<'a, S, TokenStream: for<'s> Decode<'a, 's, S>, Span: for<'s> Decode<'a, 's, S>, Symbol: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for TokenTree<TokenStream, Span, Symbol>

Source§

impl<'a, S, TokenStream: for<'s> Decode<'a, 's, S>, Span: for<'s> Decode<'a, 's, S>> Decode<'a, '_, S> for Group<TokenStream, Span>

Source§

impl<'a, S> Decode<'a, '_, S> for ApiTags

Source§

impl<'a, S> Decode<'a, '_, S> for Delimiter

Source§

impl<'a, S> Decode<'a, '_, S> for Level

Source§

impl<'a, S> Decode<'a, '_, S> for LitKind

Source§

impl<'s, S: Server> Decode<'_, 's, HandleStore<S>> for &'s Marked<<S as Server>::TokenStream, TokenStream>

Source§

impl<S: Server> Decode<'_, '_, HandleStore<S>> for Marked<<S as Server>::Span, Span>

Source§

impl<S: Server> Decode<'_, '_, HandleStore<S>> for Marked<<S as Server>::Symbol, Symbol>

Source§

impl<S: Server> Decode<'_, '_, HandleStore<S>> for Marked<<S as Server>::TokenStream, TokenStream>

Source§

impl<S> Decode<'_, '_, S> for PanicMessage

Source§

impl<S> Decode<'_, '_, S> for Span

Source§

impl<S> Decode<'_, '_, S> for Symbol

Source§

impl<S> Decode<'_, '_, S> for proc_macro::bridge::client::TokenStream