lexx

Struct Parser

Source
pub struct Parser { /* private fields */ }
Expand description

Parser type

This is a high level object that wraps the file loader/parser.his doesn’t do much special. The ParseSess object must be borrowed by the parsing processing. So this class ensures this is happening without much drama or requiring you to peer into the syntex_syntax internals.

There are methods to load external files, and borrow a string. That’ll be immediately cloned just fyi.

Implementations§

Source§

impl Parser

Source

pub fn new() -> Parser

Construct a new parser.

Source

pub fn get_tokens<'a>(&'a self, path: &str) -> Result<Vec<Token>, Fault<'a>>

Get a vector of all tokens, or get an error. Loads a file

Source

pub fn get_tokentree<'a>( &'a self, path: &str, ) -> Result<Vec<TokenTree>, Fault<'a>>

Get the token tree, or get an error. Loads a file

Source

pub fn get_tokens_local<'a>( &'a self, code: &str, ) -> Result<Vec<Token>, Fault<'a>>

Get a flat list of tokens, while using pre-loaded code. Does not file IO

Source

pub fn get_tokenstree_local<'a>( &'a self, code: &str, ) -> Result<Vec<TokenTree>, Fault<'a>>

Get token tree, while using pre-loaded code. Does not file IO

Auto Trait Implementations§

§

impl !Freeze for Parser

§

impl !RefUnwindSafe for Parser

§

impl !Send for Parser

§

impl !Sync for Parser

§

impl Unpin for Parser

§

impl !UnwindSafe for Parser

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.