Struct erl_tokenize::tokens::SymbolToken
[−]
[src]
pub struct SymbolToken { /* fields omitted */ }
Symbol token.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::SymbolToken; use erl_tokenize::values::Symbol; let pos = Position::new(); // Ok assert_eq!(SymbolToken::from_text(".", pos.clone()).unwrap().value(), Symbol::Dot); assert_eq!(SymbolToken::from_text(":= ", pos.clone()).unwrap().value(), Symbol::MapMatch); // Err assert!(SymbolToken::from_text(" .", pos.clone()).is_err()); assert!(SymbolToken::from_text("foo", pos.clone()).is_err());
Methods
impl SymbolToken
[src]
fn from_value(value: Symbol, pos: Position) -> Self
Makes a new SymbolToken
instance from the value.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::SymbolToken; use erl_tokenize::values::Symbol; let pos = Position::new(); assert_eq!(SymbolToken::from_value(Symbol::Dot, pos.clone()).text(), ".");
fn from_text(text: &str, pos: Position) -> Result<Self>
Tries to convert from any prefixes of the text to a SymbolToken
.
fn value(&self) -> Symbol
Returns the value of this token.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::SymbolToken; use erl_tokenize::values::Symbol; let pos = Position::new(); assert_eq!(SymbolToken::from_text(".", pos.clone()).unwrap().value(), Symbol::Dot); assert_eq!(SymbolToken::from_text(":= ", pos.clone()).unwrap().value(), Symbol::MapMatch);
fn text(&self) -> &'static str
Returns the original textual representation of this token.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::SymbolToken; let pos = Position::new(); assert_eq!(SymbolToken::from_text(".", pos.clone()).unwrap().text(), "."); assert_eq!(SymbolToken::from_text(":= ", pos.clone()).unwrap().text(), ":=");
Trait Implementations
impl Debug for SymbolToken
[src]
impl Clone for SymbolToken
[src]
fn clone(&self) -> SymbolToken
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl PositionRange for SymbolToken
[src]
fn start_position(&self) -> Position
Returns the (inclusive) start position of this.
fn end_position(&self) -> Position
Returns the (exclusive) end position of this.