pub struct AstArena { /* private fields */ }Implementations§
Trait Implementations§
Source§impl<'src, I: Input<'src>> Inspector<'src, I> for AstArena
impl<'src, I: Input<'src>> Inspector<'src, I> for AstArena
Source§type Checkpoint = AstArenaCheckpoint
type Checkpoint = AstArenaCheckpoint
A type the Inspector can use to revert to a previous state. Read more
Source§fn on_token(&mut self, _token: &I::Token)
fn on_token(&mut self, _token: &I::Token)
This function is called when a new token is read from the input stream.
Source§fn on_save<'parse>(&self, _cursor: &Cursor<'src, 'parse, I>) -> Self::Checkpoint
fn on_save<'parse>(&self, _cursor: &Cursor<'src, 'parse, I>) -> Self::Checkpoint
This function is called when a combinator saves the current state of the parse.
Source§fn on_rewind<'parse>(
&mut self,
marker: &Checkpoint<'src, 'parse, I, Self::Checkpoint>,
)
fn on_rewind<'parse>( &mut self, marker: &Checkpoint<'src, 'parse, I, Self::Checkpoint>, )
This function is called when a combinator rewinds to an earlier state of the parser. Read more
Auto Trait Implementations§
impl Freeze for AstArena
impl RefUnwindSafe for AstArena
impl Send for AstArena
impl Sync for AstArena
impl Unpin for AstArena
impl UnsafeUnpin for AstArena
impl UnwindSafe for AstArena
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> SpanExt for T
impl<T> SpanExt for T
fn with_span(self, span: impl Into<Span>) -> Spanned<Self>where
Self: Sized,
Source§fn spanned(self, span: impl Into<Span>) -> Spanned<Self>where
Self: Sized,
fn spanned(self, span: impl Into<Span>) -> Spanned<Self>where
Self: Sized,
Same as
Self::with_span, but can avoid name collisionsfn with_dummy_span(self) -> Spanned<Self>where
Self: Sized,
fn into_with_dummy_span<T>(self) -> Spanned<T>where
Self: Into<T>,
Source§impl<T, S> SpanWrap<S> for Twhere
S: WrappingSpan<T>,
impl<T, S> SpanWrap<S> for Twhere
S: WrappingSpan<T>,
Source§fn with_span(self, span: S) -> <S as WrappingSpan<Self>>::Spanned
fn with_span(self, span: S) -> <S as WrappingSpan<Self>>::Spanned
Invokes
WrappingSpan::make_wrapped to wrap an AST node in a span.