pub struct Parser<C> {
pub config: C,
pub codemap: Arc<CodeMap>,
}
Expand description
Parser is used to provide a simple interface for implementations of the Parse trait.
It provides a miden_diagnostics::CodeMap, and an instance of the configuration type used by the underlying Parse implementation.
Fields§
§config: C
The configuration provided to the parser
codemap: Arc<CodeMap>
The underlying miden_diagnostics::CodeMap used by the parser
Implementations§
Source§impl<C> Parser<C>
impl<C> Parser<C>
Sourcepub fn parse<T, E>(
&self,
diagnostics: &DiagnosticsHandler,
source: Arc<SourceFile>,
) -> Result<T, E>
pub fn parse<T, E>( &self, diagnostics: &DiagnosticsHandler, source: Arc<SourceFile>, ) -> Result<T, E>
Parse a [T] from the given SourceFile
Requires a DiagnosticsHandler to be provided for use by the Parse implementation
Sourcepub fn parse_string<T, S, E>(
&self,
diagnostics: &DiagnosticsHandler,
source: S,
) -> Result<T, E>
pub fn parse_string<T, S, E>( &self, diagnostics: &DiagnosticsHandler, source: S, ) -> Result<T, E>
Parse a [T] from the given string.
Requires a DiagnosticsHandler to be provided for use by the Parse implementation
Sourcepub fn parse_file<T, S, E>(
&self,
diagnostics: &DiagnosticsHandler,
source: S,
) -> Result<T, E>
pub fn parse_file<T, S, E>( &self, diagnostics: &DiagnosticsHandler, source: S, ) -> Result<T, E>
Parse a [T] from the given file path.
Requires a DiagnosticsHandler to be provided for use by the Parse implementation
Trait Implementations§
Auto Trait Implementations§
impl<C> Freeze for Parser<C>where
C: Freeze,
impl<C> RefUnwindSafe for Parser<C>where
C: RefUnwindSafe,
impl<C> Send for Parser<C>where
C: Send,
impl<C> Sync for Parser<C>where
C: Sync,
impl<C> Unpin for Parser<C>where
C: Unpin,
impl<C> UnwindSafe for Parser<C>where
C: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more