pub struct Token {
pub value: String,
pub token_type: TokenType,
pub subtype: TokenSubType,
pub start: usize,
pub end: usize,
}Expand description
A token in an Excel formula.
Fields§
§value: String§token_type: TokenType§subtype: TokenSubType§start: usize§end: usizeImplementations§
Source§impl Token
impl Token
pub fn new(value: String, token_type: TokenType, subtype: TokenSubType) -> Self
pub fn new_with_span( value: String, token_type: TokenType, subtype: TokenSubType, start: usize, end: usize, ) -> Self
pub fn is_operator(&self) -> bool
pub fn get_precedence(&self) -> Option<(u8, Associativity)>
Sourcepub fn make_operand(value: String) -> Self
pub fn make_operand(value: String) -> Self
Create an operand token based on the value.
Sourcepub fn make_operand_with_span(value: String, start: usize, end: usize) -> Self
pub fn make_operand_with_span(value: String, start: usize, end: usize) -> Self
Create an operand token with byte position span.
Sourcepub fn make_subexp(value: &str, func: bool) -> Self
pub fn make_subexp(value: &str, func: bool) -> Self
Create a subexpression token.
value must end with one of ‘{’, ‘}’, ‘(’ or ‘)’. If func is true,
the token’s type is forced to be Func.
Sourcepub fn make_subexp_with_span(
value: &str,
func: bool,
start: usize,
end: usize,
) -> Self
pub fn make_subexp_with_span( value: &str, func: bool, start: usize, end: usize, ) -> Self
Create a subexpression token with byte position span.
Sourcepub fn get_closer(&self) -> Result<Token, TokenizerError>
pub fn get_closer(&self) -> Result<Token, TokenizerError>
Given an opener token, return its corresponding closer token.
Sourcepub fn make_separator(value: &str) -> Self
pub fn make_separator(value: &str) -> Self
Create a separator token.
Sourcepub fn make_separator_with_span(value: &str, start: usize, end: usize) -> Self
pub fn make_separator_with_span(value: &str, start: usize, end: usize) -> Self
Create a separator token with byte position span.
Trait Implementations§
impl StructuralPartialEq for Token
Auto Trait Implementations§
impl Freeze for Token
impl RefUnwindSafe for Token
impl Send for Token
impl Sync for Token
impl Unpin for Token
impl UnwindSafe for Token
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