12#define T(name, string, precedence) #name,
17#define T(name, string, precedence) string,
21constexpr uint8_t
length(
const char* str) {
22 return str ?
static_cast<uint8_t
>(strlen(str)) : 0;
24#define T(name, string, precedence) length(string),
28#define T1(name, string, precedence) \
29 ((Token::name == Token::kIn) ? 0 : precedence),
30#define T2(name, string, precedence) precedence,
38 IsPropertyNameBits::encode(Token::IsAnyIdentifier(a) || a == kEscapedKeyword),
40 IsKeywordBits::encode(true) | IsPropertyNameBits::encode(true),
static const uint8_t token_flags[kNumTokens]
static const char *const string_[kNumTokens]
static const char *const name_[kNumTokens]
static const uint8_t string_length_[kNumTokens]
static const int8_t precedence_[2][kNumTokens]
#define T1(name, string, precedence)
#define T2(name, string, precedence)