15#define TOK_KEYWORD(NAME) \
24 case tok_dollar_curly:
45 assert(
false &&
"Not yet implemented!");
47 __builtin_unreachable();
58 std::string_view View;
62 : Kind(Kind), Range(Range), View(View) {}
67 [[nodiscard]] std::string_view
view()
const {
return View; }
A point in the source file.
A token. With it's kind, and the range in source code.
tok::TokenKind kind() const
LexerCursorRange range() const
Token(tok::TokenKind Kind, LexerCursorRange Range, std::string_view View)
std::string_view view() const
constexpr std::string_view spelling(TokenKind Kind)