module

Facet::Compiler::Operators

Constants

MULTI_2 = {"==" => TokenKind::EqualEqual, "!=" => TokenKind::BangEqual, "<=" => TokenKind::LessEqual, ">=" => TokenKind::GreaterEqual, "&&" => TokenKind::AndAnd, "||" => TokenKind::OrOr, "->" => TokenKind::Arrow, "=>" => TokenKind::HashRocket, "**" => TokenKind::StarStar, "<<" => TokenKind::ShiftLeft, ">>" => TokenKind::ShiftRight, "//" => TokenKind::SlashSlash, "=~" => TokenKind::Match, "!~" => TokenKind::NotMatch, "&." => TokenKind::SafeNav, "::" => TokenKind::DoubleColon, ".." => TokenKind::DotDot, "+=" => TokenKind::PlusEqual, "-=" => TokenKind::MinusEqual, "*=" => TokenKind::StarEqual, "/=" => TokenKind::SlashEqual, "%=" => TokenKind::PercentEqual, "|=" => TokenKind::PipeEqual, "&=" => TokenKind::AmpersandEqual, "^=" => TokenKind::CaretEqual, "&+" => TokenKind::AmpersandPlus, "&-" => TokenKind::AmpersandMinus, "&*" => TokenKind::AmpersandStar} of String => TokenKind
MULTI_3 = {"..." => TokenKind::DotDotDot, "===" => TokenKind::TripleEqual, "<=>" => TokenKind::Spaceship, "//=" => TokenKind::SlashSlashEqual, "**=" => TokenKind::StarStarEqual, "&**" => TokenKind::AmpersandStarStar, "<<=" => TokenKind::ShiftLeftEqual, ">>=" => TokenKind::ShiftRightEqual, "||=" => TokenKind::OrOrEqual, "&&=" => TokenKind::AndAndEqual, "&+=" => TokenKind::AmpersandPlusEqual, "&-=" => TokenKind::AmpersandMinusEqual, "&*=" => TokenKind::AmpersandStarEqual} of String => TokenKind
MULTI_4 = {"&**=" => TokenKind::AmpersandStarStarEqual} of String => TokenKind
SINGLE = {'+'.ord.to_u8 => TokenKind::Plus, '-'.ord.to_u8 => TokenKind::Minus, '*'.ord.to_u8 => TokenKind::Star, '/'.ord.to_u8 => TokenKind::Slash, '%'.ord.to_u8 => TokenKind::Percent, '^'.ord.to_u8 => TokenKind::Caret, '&'.ord.to_u8 => TokenKind::Ampersand, '|'.ord.to_u8 => TokenKind::Pipe, '!'.ord.to_u8 => TokenKind::Bang, '~'.ord.to_u8 => TokenKind::Tilde, '`'.ord.to_u8 => TokenKind::Backtick, '='.ord.to_u8 => TokenKind::Assign, '<'.ord.to_u8 => TokenKind::Less, '>'.ord.to_u8 => TokenKind::Greater, '('.ord.to_u8 => TokenKind::LParen, ')'.ord.to_u8 => TokenKind::RParen, '{'.ord.to_u8 => TokenKind::LBrace, '}'.ord.to_u8 => TokenKind::RBrace, '['.ord.to_u8 => TokenKind::LBracket, ']'.ord.to_u8 => TokenKind::RBracket, ','.ord.to_u8 => TokenKind::Comma, '.'.ord.to_u8 => TokenKind::Dot, ':'.ord.to_u8 => TokenKind::Colon, ';'.ord.to_u8 => TokenKind::Semicolon, '?'.ord.to_u8 => TokenKind::Question, '@'.ord.to_u8 => TokenKind::At} of UInt8 => TokenKind

Class methods

match(bytes : Bytes, index : Int32) : Tuple(TokenKind, Int32) | Nil
Source