///| GreenToken - Immutable token in the green tree
/// Contains syntax kind and the actual text
pub(all) struct GreenToken {
kind : SyntaxKind
text : String
} derive(Eq, Hash, Show)
///|
pub fn GreenToken::new(kind : SyntaxKind, text : String) -> GreenToken {
GreenToken::{ kind, text }
}
///|
pub fn GreenToken::kind(self : GreenToken) -> SyntaxKind {
self.kind
}
///|
pub fn GreenToken::text(self : GreenToken) -> String {
self.text
}
///|
pub fn GreenToken::text_len(self : GreenToken) -> TextSize {
TextSize::from_int(self.text.length())
}