Struct erl_tokenize::tokens::AtomToken
[−]
[src]
pub struct AtomToken { /* fields omitted */ }
Atom token.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::AtomToken; let pos = Position::new(); // Ok assert_eq!(AtomToken::from_text("foo", pos.clone()).unwrap().value(), "foo"); assert_eq!(AtomToken::from_text("foo ", pos.clone()).unwrap().value(), "foo"); assert_eq!(AtomToken::from_text("'foo'", pos.clone()).unwrap().value(), "foo"); assert_eq!(AtomToken::from_text(r"'f\x6Fo'", pos.clone()).unwrap().value(), "foo"); // Err assert!(AtomToken::from_text(" foo", pos.clone()).is_err()); assert!(AtomToken::from_text("123", pos.clone()).is_err());
Methods
impl AtomToken
[src]
fn from_value(value: &str, pos: Position) -> Self
Makes a new AtomToken
instance from the value.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::AtomToken; let pos = Position::new(); assert_eq!(AtomToken::from_value("foo", pos.clone()).text(), "'foo'"); assert_eq!(AtomToken::from_value("foo's", pos.clone()).text(), r"'foo\'s'");
fn from_text(text: &str, pos: Position) -> Result<Self>
Tries to convert from any prefixes of the input text to an AtomToken
.
fn value(&self) -> &str
Returns the value of this token.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::AtomToken; let pos = Position::new(); assert_eq!(AtomToken::from_text("foo", pos.clone()).unwrap().value(), "foo"); assert_eq!(AtomToken::from_text("'foo'", pos.clone()).unwrap().value(), "foo"); assert_eq!(AtomToken::from_text(r"'f\x6Fo'", pos.clone()).unwrap().value(), "foo");
fn text(&self) -> &str
Returns the original textual representation of this token.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::AtomToken; let pos = Position::new(); assert_eq!(AtomToken::from_text("foo", pos.clone()).unwrap().text(), "foo"); assert_eq!(AtomToken::from_text("'foo'", pos.clone()).unwrap().text(), "'foo'"); assert_eq!(AtomToken::from_text(r"'f\x6Fo'", pos.clone()).unwrap().text(), r"'f\x6Fo'");
Trait Implementations
impl Debug for AtomToken
[src]
impl Clone for AtomToken
[src]
fn clone(&self) -> AtomToken
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 AtomToken
[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.