Trait Parse

Source
pub trait Parse<I: ParseInput>: Sized {
    // Required method
    fn parse(input: I) -> Result<Self>;
}

Required Methods§

Source

fn parse(input: I) -> Result<Self>

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.

Implementations on Foreign Types§

Source§

impl Parse<Input<'_>> for Vec<u8>

Source§

fn parse(input: Input<'_>) -> Result<Self>

Source§

impl Parse<ReflessInput<'_>> for Vec<u8>

Source§

fn parse(input: ReflessInput<'_>) -> Result<Self>

Source§

impl<I: ParseInput> Parse<I> for bool

Source§

fn parse(input: I) -> Result<Self>

Source§

impl<I: ParseInput> Parse<I> for ()

Source§

fn parse(input: I) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: Parse<II>> Parse<II> for (A, B)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: ParseInline<II>, C: Parse<II>> Parse<II> for (A, B, C)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: ParseInline<II>, C: ParseInline<II>, D: Parse<II>> Parse<II> for (A, B, C, D)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: ParseInline<II>, C: ParseInline<II>, D: ParseInline<II>, E: Parse<II>> Parse<II> for (A, B, C, D, E)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: ParseInline<II>, C: ParseInline<II>, D: ParseInline<II>, E: ParseInline<II>, F: Parse<II>> Parse<II> for (A, B, C, D, E, F)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: ParseInline<II>, C: ParseInline<II>, D: ParseInline<II>, E: ParseInline<II>, F: ParseInline<II>, G: Parse<II>> Parse<II> for (A, B, C, D, E, F, G)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: ParseInline<II>, C: ParseInline<II>, D: ParseInline<II>, E: ParseInline<II>, F: ParseInline<II>, G: ParseInline<II>, H: Parse<II>> Parse<II> for (A, B, C, D, E, F, G, H)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: ParseInline<II>, C: ParseInline<II>, D: ParseInline<II>, E: ParseInline<II>, F: ParseInline<II>, G: ParseInline<II>, H: ParseInline<II>, I: Parse<II>> Parse<II> for (A, B, C, D, E, F, G, H, I)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: ParseInline<II>, C: ParseInline<II>, D: ParseInline<II>, E: ParseInline<II>, F: ParseInline<II>, G: ParseInline<II>, H: ParseInline<II>, I: ParseInline<II>, J: Parse<II>> Parse<II> for (A, B, C, D, E, F, G, H, I, J)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: ParseInline<II>, C: ParseInline<II>, D: ParseInline<II>, E: ParseInline<II>, F: ParseInline<II>, G: ParseInline<II>, H: ParseInline<II>, I: ParseInline<II>, J: ParseInline<II>, K: Parse<II>> Parse<II> for (A, B, C, D, E, F, G, H, I, J, K)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<II: ParseInput, A: ParseInline<II>, B: ParseInline<II>, C: ParseInline<II>, D: ParseInline<II>, E: ParseInline<II>, F: ParseInline<II>, G: ParseInline<II>, H: ParseInline<II>, I: ParseInline<II>, J: ParseInline<II>, K: ParseInline<II>, L: Parse<II>> Parse<II> for (A, B, C, D, E, F, G, H, I, J, K, L)

Source§

fn parse(input: II) -> Result<Self>

Source§

impl<K: ParseInline<I> + Ord, V: ParseInline<I>, I: ParseInput> Parse<I> for BTreeMap<K, V>

Source§

fn parse(input: I) -> Result<Self>

Source§

impl<T: Parse<I>, I: ParseInput> Parse<I> for (T,)

Source§

fn parse(input: I) -> Result<Self>

Source§

impl<T: Parse<I>, I: ParseInput> Parse<I> for Box<T>

Source§

fn parse(input: I) -> Result<Self>

Source§

impl<T: Parse<I>, I: ParseInput> Parse<I> for Arc<T>

Source§

fn parse(input: I) -> Result<Self>

Source§

impl<T: ParseInline<I> + Ord, I: ParseInput> Parse<I> for BTreeSet<T>

Source§

fn parse(input: I) -> Result<Self>

Source§

impl<T: ParseInline<I> + MaybeHasNiche<MnArray: MnArray<MaybeNiche = N>>, N: Niche<NeedsTag = B>, B: Bit, I: ParseInput> Parse<I> for Option<T>

Source§

fn parse(input: I) -> Result<Self>

Source§

impl<T: ParseInline<I>, I: ParseInput> Parse<I> for VecDeque<T>

Source§

fn parse(input: I) -> Result<Self>

Source§

impl<T: ParseInline<I>, I: ParseInput> Parse<I> for Vec<T>

Source§

fn parse(input: I) -> Result<Self>

Source§

impl<const N: usize, I: ParseInput> Parse<I> for [u8; N]

Source§

fn parse(input: I) -> Result<Self>

Implementors§

Source§

impl<'a, T: Parse<ReflessInput<'a>>> Parse<Input<'a>> for Refless<T>

Source§

impl<T, __I: ParseInput> Parse<__I> for Lp<T>
where Self: ParseInline<__I>,

Source§

impl<T, __I: ParseInput> Parse<__I> for Point<T>
where Self: ParseInline<__I>,

Source§

impl<T, const MAX: usize, __I: ParseInput> Parse<__I> for EnumTag<T, MAX>
where Self: ParseInline<__I>,

Source§

impl<__I: ParseInput> Parse<__I> for LpBytes
where Self: ParseInline<__I>,

Source§

impl<__I: ParseInput> Parse<__I> for LpString
where Self: ParseInline<__I>,