Struct texlang::vm::ExpandedStream
source · pub struct ExpandedStream<S>(/* private fields */);
Expand description
A TokenStream that performs expansion.
The unexpanded tokens are retrieved from the unexpanded stream returned by the unexpanded method.
Implementations§
source§impl<S: TexlangState> ExpandedStream<S>
impl<S: TexlangState> ExpandedStream<S>
sourcepub fn unexpanded(&mut self) -> &mut UnexpandedStream<S>
pub fn unexpanded(&mut self) -> &mut UnexpandedStream<S>
Returns the underlying unexpanded stream.
sourcepub fn expand_once(&mut self) -> Result<bool>
pub fn expand_once(&mut self) -> Result<bool>
Expand the next token in the input.
This method only expands a single token. If, after the expansion, the next token is expandable it will not be expanded.
pub fn checkout_token_buffer(&mut self) -> Vec<Token>
sourcepub fn return_token_buffer(&mut self, token_buffer: Vec<Token>)
pub fn return_token_buffer(&mut self, token_buffer: Vec<Token>)
Return a token buffer, allowing it to be reused.
sourcepub fn expansions_mut(&mut self) -> &mut Vec<Token>
pub fn expansions_mut(&mut self) -> &mut Vec<Token>
Returns a mutable reference to the expanded tokens stack for the current input source.
The tokens are a stack, so the next token is the last token in the vector.
Trait Implementations§
source§impl<S> AsMut<ExpandedStream<S>> for ExecutionInput<S>
impl<S> AsMut<ExpandedStream<S>> for ExecutionInput<S>
source§fn as_mut(&mut self) -> &mut ExpandedStream<S>
fn as_mut(&mut self) -> &mut ExpandedStream<S>
Converts this type into a mutable reference of the (usually inferred) input type.
source§impl<S> AsMut<ExpandedStream<S>> for ExpandedStream<S>
impl<S> AsMut<ExpandedStream<S>> for ExpandedStream<S>
source§fn as_mut(&mut self) -> &mut ExpandedStream<S>
fn as_mut(&mut self) -> &mut ExpandedStream<S>
Converts this type into a mutable reference of the (usually inferred) input type.
source§impl<S> AsMut<ExpandedStream<S>> for ExpansionInput<S>
impl<S> AsMut<ExpandedStream<S>> for ExpansionInput<S>
source§fn as_mut(&mut self) -> &mut ExpandedStream<S>
fn as_mut(&mut self) -> &mut ExpandedStream<S>
Converts this type into a mutable reference of the (usually inferred) input type.
source§impl<S: TexlangState> TokenStream for ExpandedStream<S>
impl<S: TexlangState> TokenStream for ExpandedStream<S>
source§fn next_or(&mut self) -> Result<Option<Token>>
fn next_or(&mut self) -> Result<Option<Token>>
Gets the next token in the stream or
Ok(None)
if the stream is exhausted.source§fn next<E: EndOfInputError>(&mut self, err: E) -> Result<Token>
fn next<E: EndOfInputError>(&mut self, err: E) -> Result<Token>
Gets the next token in the stream or error if the stream is exhausted. Read more
fn peek(&mut self) -> Result<Option<Token>>
source§fn commands_map(&self) -> &Map<Self::S>
fn commands_map(&self) -> &Map<Self::S>
Returns a reference to the commands map.
Auto Trait Implementations§
impl<S> !Freeze for ExpandedStream<S>
impl<S> !RefUnwindSafe for ExpandedStream<S>
impl<S> !Send for ExpandedStream<S>
impl<S> !Sync for ExpandedStream<S>
impl<S> Unpin for ExpandedStream<S>where
S: Unpin,
impl<S> UnwindSafe for ExpandedStream<S>where
S: 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