ParserImpl

Trait ParserImpl 

Source
pub trait ParserImpl<'a>: Sized + Copy {
    // Required method
    fn parser_impl(
        source: Source<'a>,
        out_arena: &'a Arena,
        err_arena: &'a Arena,
        precedence: u16,
    ) -> Result<(Self, Source<'a>), Error<'a>>;

    // Provided method
    fn num() -> u16 { ... }
}

Required Methods§

Source

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(Self, Source<'a>), Error<'a>>

Provided Methods§

Source

fn num() -> u16

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<'a> ParserImpl<'a> for &'a str

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, _: u16, ) -> Result<(&'a str, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for f32

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(f32, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for f64

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(f64, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for i8

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(i8, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for i16

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(i16, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for i32

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(i32, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for i64

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(i64, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for i128

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(i128, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for u8

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(u8, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for u16

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(u16, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for u32

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(u32, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for u64

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(u64, Source<'a>), Error<'a>>

Source§

impl<'a> ParserImpl<'a> for u128

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(u128, Source<'a>), Error<'a>>

Source§

impl<'a, X> ParserImpl<'a> for &'a X
where X: ParserImpl<'a>,

Source§

fn parser_impl( source: Source<'a>, out_arena: &'a Arena, err_arena: &'a Arena, precedence: u16, ) -> Result<(&'a X, Source<'a>), Error<'a>>

Implementors§

Source§

impl<'a> ParserImpl<'a> for Ident<'a>

Source§

impl<'a, T> ParserImpl<'a> for Span<'a, T>
where T: ParserImpl<'a> + Copy,