[][src]Struct kul_core::Parser

pub struct Parser<CC, DA, OB> {
    pub classifier: CC,
    pub allocator: DA,
    pub bindings: OB,
}

Represents: the ability to parse a string; the characters used to delimit the nesting form; the method of allocating the Datums; and the environment of bindings of macros.

Fields

classifier: CC

The character classifier. Determines which chars are the format's delimiters.

allocator: DA

The Datum allocator. Determines how and where returned AST nodes are allocated.

bindings: OB

The operator bindings. Determines which, if any, operator forms are bound to macros.

Methods

impl<CC, DA, OB> Parser<CC, DA, OB> where
    CC: CharClassifier,
    DA: DatumAllocator,
    DA::TT: TextConcat<DA>,
    OB: OperatorBindings<DA>, 
[src]

Important traits for ParseIter<'p, Parser<CC, DA, OB>, S>
pub fn parse<S>(&mut self, source: S) -> ParseIter<Self, S> where
    S: SourceStream<DA>, 
[src]

The primary method. Parse the given text source, according to the specific parameterization of our Self, and return an iterator that yields each top-level form as a Datum AST.

Trait Implementations

impl<CC: Debug, DA: Debug, OB: Debug> Debug for Parser<CC, DA, OB>[src]

Auto Trait Implementations

impl<CC, DA, OB> Send for Parser<CC, DA, OB> where
    CC: Send,
    DA: Send,
    OB: Send

impl<CC, DA, OB> Sync for Parser<CC, DA, OB> where
    CC: Sync,
    DA: Sync,
    OB: Sync

Blanket Implementations

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]