Struct erl_tokenize::tokens::KeywordToken
[−]
[src]
pub struct KeywordToken { /* fields omitted */ }
Keyword token.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::KeywordToken; use erl_tokenize::values::Keyword; let pos = Position::new(); // Ok assert_eq!(KeywordToken::from_text("receive", pos.clone()).unwrap().value(), Keyword::Receive); assert_eq!(KeywordToken::from_text("and ", pos.clone()).unwrap().value(), Keyword::And); // Err assert!(KeywordToken::from_text("foo", pos.clone()).is_err()); assert!(KeywordToken::from_text(" and", pos.clone()).is_err()); assert!(KeywordToken::from_text("andfoo", pos.clone()).is_err());
Methods
impl KeywordToken
[src]
fn from_value(value: Keyword, pos: Position) -> Self
Makes a new KeywordToken
instance from the value.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::KeywordToken; use erl_tokenize::values::Keyword; let pos = Position::new(); assert_eq!(KeywordToken::from_value(Keyword::Case, pos.clone()).text(), "case");
fn from_text(text: &str, pos: Position) -> Result<Self>
Tries to convert from any prefixes of the text to a KeywordToken
.
fn value(&self) -> Keyword
Returns the value of this token.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::KeywordToken; use erl_tokenize::values::Keyword; let pos = Position::new(); assert_eq!(KeywordToken::from_text("receive", pos.clone()).unwrap().value(), Keyword::Receive); assert_eq!(KeywordToken::from_text("and ", pos.clone()).unwrap().value(), Keyword::And);
fn text(&self) -> &'static str
Returns the original textual representation of this token.
Examples
use erl_tokenize::Position; use erl_tokenize::tokens::KeywordToken; let pos = Position::new(); assert_eq!(KeywordToken::from_text("receive", pos.clone()).unwrap().text(), "receive"); assert_eq!(KeywordToken::from_text("and ", pos.clone()).unwrap().text(), "and");
Trait Implementations
impl Debug for KeywordToken
[src]
impl Clone for KeywordToken
[src]
fn clone(&self) -> KeywordToken
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 KeywordToken
[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.