pub struct TokenMeta {
pub token: Token,
pub category: TokenCategory,
pub text: String,
pub preceded_by_space: bool,
pub preceded_by_newline: bool,
}Expand description
Rich metadata attached to a token.
Fields§
§token: TokenThe underlying token.
category: TokenCategoryHigh-level category.
text: StringRaw source text for this token.
preceded_by_space: booltrue if any whitespace preceded this token on the same line.
preceded_by_newline: booltrue if a newline preceded this token.
Implementations§
Source§impl TokenMeta
impl TokenMeta
Sourcepub fn new(
token: Token,
category: TokenCategory,
text: impl Into<String>,
preceded_by_space: bool,
preceded_by_newline: bool,
) -> Self
pub fn new( token: Token, category: TokenCategory, text: impl Into<String>, preceded_by_space: bool, preceded_by_newline: bool, ) -> Self
Construct a new TokenMeta.
Sourcepub fn from_token(token: Token, source: &str) -> Self
pub fn from_token(token: Token, source: &str) -> Self
Convenience: construct from a Token and its source slice.
Sourcepub fn is_keyword(&self) -> bool
pub fn is_keyword(&self) -> bool
true if this token is a keyword.
Sourcepub fn is_literal(&self) -> bool
pub fn is_literal(&self) -> bool
true if this token is a literal.
Source§impl TokenMeta
impl TokenMeta
Sourcepub fn set_preceded_by_newline(&mut self, v: bool)
pub fn set_preceded_by_newline(&mut self, v: bool)
Annotate with preceding newline based on source position.
Sourcepub fn set_preceded_by_space(&mut self, v: bool)
pub fn set_preceded_by_space(&mut self, v: bool)
Annotate with preceding space.
Sourcepub fn is_numeric(&self) -> bool
pub fn is_numeric(&self) -> bool
Whether this token is a numeric literal.
Sourcepub fn is_operator(&self) -> bool
pub fn is_operator(&self) -> bool
Whether this token is an operator.
Trait Implementations§
impl StructuralPartialEq for TokenMeta
Auto Trait Implementations§
impl Freeze for TokenMeta
impl RefUnwindSafe for TokenMeta
impl Send for TokenMeta
impl Sync for TokenMeta
impl Unpin for TokenMeta
impl UnsafeUnpin for TokenMeta
impl UnwindSafe for TokenMeta
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