Enum wagon_lexer::metadata::Metadata
source · pub enum Metadata {
Identifier(Ident),
Lt,
Gt,
Semi,
Colon,
Path(String),
Delim,
Include,
}
Expand description
Lexer for the Metadata DSL.
Variants§
Identifier(Ident)
An identifier. Gets parsed to an [wagon-ident::Ident
] automatically.
An identifier may be any string of alphanumeric characters, as well as _
. The string must start with a purely alphabetical character.
The identifier may be prepended by $
/&
/*
to specify what type of identifier it is.
Lt
<
Gt
>
Semi
;
Colon
:
Path(String)
A Rust style path.
Delim
3 or more =
Include
include
Trait Implementations§
source§impl<'s> Logos<'s> for Metadata
impl<'s> Logos<'s> for Metadata
§type Error = LexingError
type Error = LexingError
Error type returned by the lexer. This can be set using
#[logos(error = MyError)]
. Defaults to ()
if not set.§type Extras = ()
type Extras = ()
Associated type
Extras
for the particular lexer. This can be set using
#[logos(extras = MyExtras)]
and accessed inside callbacks.§type Source = str
type Source = str
Source type this token can be lexed from. This will default to
str
,
unless one of the defined patterns explicitly uses non-unicode byte values
or byte slices, in which case that implementation will use [u8]
.source§fn lex(lex: &mut Lexer<'s, Self>)
fn lex(lex: &mut Lexer<'s, Self>)
The heart of Logos. Called by the
Lexer
. The implementation for this function
is generated by the logos-derive
crate.§fn lexer_with_extras(
source: &'source Self::Source,
extras: Self::Extras
) -> Lexer<'source, Self> ⓘ
fn lexer_with_extras( source: &'source Self::Source, extras: Self::Extras ) -> Lexer<'source, Self> ⓘ
Create a new instance of a
Lexer
with the provided Extras
that will
produce tokens implementing this Logos
.source§impl PartialEq for Metadata
impl PartialEq for Metadata
impl Eq for Metadata
impl StructuralPartialEq for Metadata
Auto Trait Implementations§
impl Freeze for Metadata
impl RefUnwindSafe for Metadata
impl Send for Metadata
impl Sync for Metadata
impl Unpin for Metadata
impl UnwindSafe for Metadata
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