/* C++ code produced by gperf version 3.0.3 */
/* Command-line: gperf -L C++ -Z ReservedKeywordMap -t gen/reserved_keywords.gperf */
/* Computed positions: -k'1-2,4-5,$' */
#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
&& ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
&& (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
&& ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
&& ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
&& ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
&& ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
&& ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
&& ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
&& ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
&& ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
&& ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
&& ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
&& ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
&& ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
&& ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
&& ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
&& ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
&& ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
&& ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
&& ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
&& ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
&& ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
/* The character set is not based on ISO-646. */
#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
#endif
#include <lexer.hpp>
#define TOTAL_KEYWORDS 411
#define MIN_WORD_LENGTH 1
#define MAX_WORD_LENGTH 16
#define MIN_HASH_VALUE 1
#define MAX_HASH_VALUE 1262
/* maximum key range = 1262, duplicates = 0 */
inline unsigned int
ReservedKeywordMap::hash (register const char *str, register unsigned int len)
{
static unsigned short asso_values[] =
{
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 140, 400, 195, 25, 185, 20, 395,
325, 320, 200, 235, 315, 420, 190, 285, 380, 370,
40, 365, 360, 350, 345, 335, 245, 95, 80, 305,
250, 5, 215, 290, 60, 140, 65, 20, 200, 70,
85, 40, 25, 5, 1263, 15, 15, 230, 60, 185,
45, 1263, 110, 85, 55, 200, 15, 225, 205, 45,
1263, 260, 165, 210, 125, 120, 65, 245, 270, 50,
150, 0, 280, 25, 125, 150, 20, 160, 120, 115,
20, 80, 35, 95, 40, 15, 10, 155, 65, 240,
220, 345, 125, 295, 280, 0, 170, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
1263, 1263, 1263, 1263, 1263, 1263
};
register int hval = (int)len;
switch (hval)
{
default:
hval += asso_values[(unsigned char)str[4]];
/*FALLTHROUGH*/
case 4:
hval += asso_values[(unsigned char)str[3]];
/*FALLTHROUGH*/
case 3:
case 2:
hval += asso_values[(unsigned char)str[1]];
/*FALLTHROUGH*/
case 1:
hval += asso_values[(unsigned char)str[0]];
break;
}
return hval + asso_values[(unsigned char)str[len - 1]];
}
ReservedKeyword *
ReservedKeywordMap::in_word_set (register const char *str, register unsigned int len)
{
static ReservedKeyword wordlist[] =
{
{""},
#line 334 "gen/reserved_keywords.gperf"
{"}", {Enum::Token::Type::RightBrace, Enum::Token::Kind::Symbol, "RightBrace", "}"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
#line 74 "gen/reserved_keywords.gperf"
{"=", {Enum::Token::Type::Assign, Enum::Token::Kind::Assign, "Assign", "="}},
{""}, {""}, {""}, {""}, {""},
#line 41 "gen/reserved_keywords.gperf"
{"==", {Enum::Token::Type::EqualEqual, Enum::Token::Kind::Operator, "EqualEqual", "=="}},
{""}, {""}, {""}, {""},
#line 53 "gen/reserved_keywords.gperf"
{"ne", {Enum::Token::Type::StringNotEqual, Enum::Token::Kind::Operator, "StringNotEqual", "ne"}},
{""}, {""}, {""}, {""},
#line 51 "gen/reserved_keywords.gperf"
{"ge", {Enum::Token::Type::StringGreaterEqual, Enum::Token::Kind::Operator, "StringGreaterEqual", "ge"}},
{""}, {""}, {""},
#line 422 "gen/reserved_keywords.gperf"
{"s", {Enum::Token::Type::RegReplace, Enum::Token::Kind::RegReplacePrefix, "RegReplace", "s"}},
#line 64 "gen/reserved_keywords.gperf"
{"&=", {Enum::Token::Type::AndBitEqual, Enum::Token::Kind::Assign, "AndBitEqual", "&="}},
{""}, {""}, {""}, {""},
#line 378 "gen/reserved_keywords.gperf"
{"$=", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$="}},
{""}, {""},
#line 318 "gen/reserved_keywords.gperf"
{"state", {Enum::Token::Type::StateDecl, Enum::Token::Kind::Decl, "StateDecl", "state"}},
{""}, {""}, {""},
#line 283 "gen/reserved_keywords.gperf"
{"next", {Enum::Token::Type::Next, Enum::Token::Kind::Control, "Next", "next"}},
{""}, {""},
#line 50 "gen/reserved_keywords.gperf"
{"gt", {Enum::Token::Type::StringGreater, Enum::Token::Kind::Operator, "StringGreater", "gt"}},
#line 68 "gen/reserved_keywords.gperf"
{"&&=", {Enum::Token::Type::AndEqual, Enum::Token::Kind::Assign, "AndEqual", "&&="}},
#line 158 "gen/reserved_keywords.gperf"
{"stat", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "stat"}},
#line 244 "gen/reserved_keywords.gperf"
{"setservent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "setservent"}},
{""}, {""},
#line 238 "gen/reserved_keywords.gperf"
{"getservbyname", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getservbyname"}},
#line 242 "gen/reserved_keywords.gperf"
{"setnetent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "setnetent"}},
#line 228 "gen/reserved_keywords.gperf"
{"endservent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "endservent"}},
#line 208 "gen/reserved_keywords.gperf"
{"semget", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "semget"}},
#line 233 "gen/reserved_keywords.gperf"
{"getnetbyname", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getnetbyname"}},
{""},
#line 216 "gen/reserved_keywords.gperf"
{"endnetent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "endnetent"}},
#line 240 "gen/reserved_keywords.gperf"
{"getservent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getservent"}},
{""},
#line 62 "gen/reserved_keywords.gperf"
{"&&", {Enum::Token::Type::And, Enum::Token::Kind::Operator, "And", "&&"}},
#line 239 "gen/reserved_keywords.gperf"
{"getservbyport", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getservbyport"}},
#line 234 "gen/reserved_keywords.gperf"
{"getnetent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getnetent"}},
#line 169 "gen/reserved_keywords.gperf"
{"reset", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "reset"}},
{""},
#line 366 "gen/reserved_keywords.gperf"
{"$&", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$&"}},
{""}, {""}, {""},
#line 193 "gen/reserved_keywords.gperf"
{"getpeername", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getpeername"}},
#line 343 "gen/reserved_keywords.gperf"
{"&$", {Enum::Token::Type::ShortCodeDereference, Enum::Token::Kind::Modifier, "ShortCodeDereference", "&$"}},
{""}, {""}, {""}, {""},
#line 386 "gen/reserved_keywords.gperf"
{"$$", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$$"}},
{""}, {""}, {""},
#line 132 "gen/reserved_keywords.gperf"
{"select", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "select"}},
{""}, {""}, {""}, {""}, {""},
#line 90 "gen/reserved_keywords.gperf"
{"reverse", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "reverse"}},
{""}, {""}, {""}, {""},
#line 420 "gen/reserved_keywords.gperf"
{"tr", {Enum::Token::Type::RegAllReplace, Enum::Token::Kind::RegReplacePrefix, "RegAllReplace", "tr"}},
{""}, {""}, {""}, {""},
#line 232 "gen/reserved_keywords.gperf"
{"getnetbyaddr", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getnetbyaddr"}},
#line 225 "gen/reserved_keywords.gperf"
{"setgrent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "setgrent"}},
{""},
#line 272 "gen/reserved_keywords.gperf"
{"CHECK", {Enum::Token::Type::ModWord, Enum::Token::Kind::ModWord, "ModWord", "CHECK"}},
{""}, {""},
#line 214 "gen/reserved_keywords.gperf"
{"endgrent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "endgrent"}},
{""}, {""}, {""},
#line 358 "gen/reserved_keywords.gperf"
{"$2", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$2"}},
#line 218 "gen/reserved_keywords.gperf"
{"getgrent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getgrent"}},
#line 410 "gen/reserved_keywords.gperf"
{"@INC", {Enum::Token::Type::LibraryDirectories, Enum::Token::Kind::Term, "LibraryDirectories", "@INC"}},
{""},
#line 243 "gen/reserved_keywords.gperf"
{"setprotoent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "setprotoent"}},
#line 341 "gen/reserved_keywords.gperf"
{"@$", {Enum::Token::Type::ShortArrayDereference, Enum::Token::Kind::Modifier, "ShortArrayDereference", "@$"}},
#line 77 "gen/reserved_keywords.gperf"
{"not", {Enum::Token::Type::AlphabetNot, Enum::Token::Kind::SingleTerm, "AlphabetNot", "not"}},
#line 235 "gen/reserved_keywords.gperf"
{"getprotobyname", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getprotobyname"}},
{""},
#line 227 "gen/reserved_keywords.gperf"
{"endprotoent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "endprotoent"}},
#line 179 "gen/reserved_keywords.gperf"
{"setpgrp", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "setpgrp"}},
#line 142 "gen/reserved_keywords.gperf"
{"vec", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "vec"}},
#line 89 "gen/reserved_keywords.gperf"
{"sort", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "sort"}},
#line 124 "gen/reserved_keywords.gperf"
{"print", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "print"}},
#line 237 "gen/reserved_keywords.gperf"
{"getprotoent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getprotoent"}},
#line 49 "gen/reserved_keywords.gperf"
{"le", {Enum::Token::Type::StringLessEqual, Enum::Token::Kind::Operator, "StringLessEqual", "le"}},
{""},
#line 321 "gen/reserved_keywords.gperf"
{"else", {Enum::Token::Type::ElseStmt, Enum::Token::Kind::Stmt, "ElseStmt", "else"}},
{""}, {""},
#line 174 "gen/reserved_keywords.gperf"
{"getpgrp", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getpgrp"}},
#line 139 "gen/reserved_keywords.gperf"
{"truncate", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "truncate"}},
#line 123 "gen/reserved_keywords.gperf"
{"getc", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getc"}},
#line 199 "gen/reserved_keywords.gperf"
{"setsockopt", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "setsockopt"}},
#line 194 "gen/reserved_keywords.gperf"
{"getsockname", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getsockname"}},
{""},
#line 96 "gen/reserved_keywords.gperf"
{"pos", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "pos"}},
#line 261 "gen/reserved_keywords.gperf"
{"sqrt", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "sqrt"}},
{""}, {""},
#line 66 "gen/reserved_keywords.gperf"
{"^=", {Enum::Token::Type::NotBitEqual, Enum::Token::Kind::Assign, "NotBitEqual", "^="}},
{""},
#line 105 "gen/reserved_keywords.gperf"
{"grep", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "grep"}},
#line 195 "gen/reserved_keywords.gperf"
{"getsockopt", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getsockopt"}},
{""},
#line 48 "gen/reserved_keywords.gperf"
{"lt", {Enum::Token::Type::StringLess, Enum::Token::Kind::Operator, "StringLess", "lt"}},
#line 258 "gen/reserved_keywords.gperf"
{"oct", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "oct"}},
#line 106 "gen/reserved_keywords.gperf"
{"join", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "join"}},
{""}, {""},
#line 385 "gen/reserved_keywords.gperf"
{"$@", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$@"}},
#line 253 "gen/reserved_keywords.gperf"
{"cos", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "cos"}},
{""},
#line 81 "gen/reserved_keywords.gperf"
{"crypt", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "crypt"}},
{""},
#line 47 "gen/reserved_keywords.gperf"
{"!=", {Enum::Token::Type::NotEqual, Enum::Token::Kind::Operator, "NotEqual", "!="}},
#line 100 "gen/reserved_keywords.gperf"
{"pop", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "pop"}},
{""}, {""},
#line 236 "gen/reserved_keywords.gperf"
{"getprotobynumber", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getprotobynumber"}},
#line 367 "gen/reserved_keywords.gperf"
{"$`", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$`"}},
#line 400 "gen/reserved_keywords.gperf"
{"$^I", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^I"}},
#line 153 "gen/reserved_keywords.gperf"
{"open", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "open"}},
{""},
#line 329 "gen/reserved_keywords.gperf"
{":", {Enum::Token::Type::Colon, Enum::Token::Kind::Colon, "Colon", ":"}},
#line 25 "gen/reserved_keywords.gperf"
{"or", {Enum::Token::Type::AlphabetOr, Enum::Token::Kind::Operator, "AlphabetOr", "or"}},
#line 187 "gen/reserved_keywords.gperf"
{"tie", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "tie"}},
#line 247 "gen/reserved_keywords.gperf"
{"time", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "time"}},
{""},
#line 108 "gen/reserved_keywords.gperf"
{"delete", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "delete"}},
#line 192 "gen/reserved_keywords.gperf"
{"connect", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "connect"}},
#line 401 "gen/reserved_keywords.gperf"
{"$^L", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^L"}},
{""},
#line 209 "gen/reserved_keywords.gperf"
{"semop", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "semop"}},
#line 204 "gen/reserved_keywords.gperf"
{"msgget", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "msgget"}},
{""},
#line 319 "gen/reserved_keywords.gperf"
{"use", {Enum::Token::Type::UseDecl, Enum::Token::Kind::Decl, "UseDecl", "use"}},
#line 197 "gen/reserved_keywords.gperf"
{"recv", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "recv"}},
{""}, {""},
#line 418 "gen/reserved_keywords.gperf"
{"qr", {Enum::Token::Type::RegDecl, Enum::Token::Kind::RegPrefix, "RegDecl", "qr"}},
#line 399 "gen/reserved_keywords.gperf"
{"$^H", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^H"}},
#line 273 "gen/reserved_keywords.gperf"
{"INIT", {Enum::Token::Type::ModWord, Enum::Token::Kind::ModWord, "ModWord", "INIT"}},
{""},
#line 211 "gen/reserved_keywords.gperf"
{"shmget", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "shmget"}},
#line 186 "gen/reserved_keywords.gperf"
{"no", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "no"}},
#line 256 "gen/reserved_keywords.gperf"
{"int", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "int"}},
{""}, {""}, {""},
#line 382 "gen/reserved_keywords.gperf"
{"$:", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$:"}},
#line 260 "gen/reserved_keywords.gperf"
{"sin", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "sin"}},
#line 178 "gen/reserved_keywords.gperf"
{"pipe", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "pipe"}},
#line 114 "gen/reserved_keywords.gperf"
{"close", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "close"}},
#line 414 "gen/reserved_keywords.gperf"
{"q", {Enum::Token::Type::RegQuote, Enum::Token::Kind::RegPrefix, "RegQuote", "q"}},
#line 52 "gen/reserved_keywords.gperf"
{"eq", {Enum::Token::Type::StringEqual, Enum::Token::Kind::Operator, "StringEqual", "eq"}},
#line 398 "gen/reserved_keywords.gperf"
{"$^G", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^G"}},
#line 111 "gen/reserved_keywords.gperf"
{"keys", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "keys"}},
#line 183 "gen/reserved_keywords.gperf"
{"times", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "times"}},
{""},
#line 34 "gen/reserved_keywords.gperf"
{"%=", {Enum::Token::Type::ModEqual, Enum::Token::Kind::Assign, "ModEqual", "%="}},
#line 404 "gen/reserved_keywords.gperf"
{"$^P", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^P"}},
{""}, {""},
#line 207 "gen/reserved_keywords.gperf"
{"semctl", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "semctl"}},
#line 35 "gen/reserved_keywords.gperf"
{".=", {Enum::Token::Type::StringAddEqual, Enum::Token::Kind::Assign, "StringAddEqual", ".="}},
#line 54 "gen/reserved_keywords.gperf"
{"cmp", {Enum::Token::Type::StringCompare, Enum::Token::Kind::Operator, "StringCompare", "cmp"}},
#line 282 "gen/reserved_keywords.gperf"
{"redo", {Enum::Token::Type::Redo, Enum::Token::Kind::Control, "Redo", "redo"}},
{""}, {""},
#line 349 "gen/reserved_keywords.gperf"
{"\\&", {Enum::Token::Type::CodeRef, Enum::Token::Kind::SingleTerm, "CodeRef", "\\&"}},
#line 406 "gen/reserved_keywords.gperf"
{"$^T", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^T"}},
{""},
#line 181 "gen/reserved_keywords.gperf"
{"sleep", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "sleep"}},
#line 323 "gen/reserved_keywords.gperf"
{"unless", {Enum::Token::Type::UnlessStmt, Enum::Token::Kind::Stmt, "UnlessStmt", "unless"}},
#line 32 "gen/reserved_keywords.gperf"
{"*=", {Enum::Token::Type::MulEqual, Enum::Token::Kind::Assign, "MulEqual", "*="}},
#line 220 "gen/reserved_keywords.gperf"
{"getgrnam", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getgrnam"}},
{""}, {""}, {""},
#line 365 "gen/reserved_keywords.gperf"
{"$9", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$9"}},
#line 80 "gen/reserved_keywords.gperf"
{"chr", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "chr"}},
{""},
#line 326 "gen/reserved_keywords.gperf"
{"given", {Enum::Token::Type::GivenStmt, Enum::Token::Kind::Stmt, "GivenStmt", "given"}},
{""},
#line 83 "gen/reserved_keywords.gperf"
{"lc", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "lc"}},
#line 396 "gen/reserved_keywords.gperf"
{"$^E", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^E"}},
{""},
#line 98 "gen/reserved_keywords.gperf"
{"split", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "split"}},
{""},
#line 39 "gen/reserved_keywords.gperf"
{">=", {Enum::Token::Type::GreaterEqual, Enum::Token::Kind::Operator, "GreaterEqual", ">="}},
#line 257 "gen/reserved_keywords.gperf"
{"log", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "log"}},
{""}, {""},
#line 419 "gen/reserved_keywords.gperf"
{"m", {Enum::Token::Type::RegMatch, Enum::Token::Kind::RegPrefix, "RegMatch", "m"}},
#line 38 "gen/reserved_keywords.gperf"
{"x=", {Enum::Token::Type::StringMulEqual, Enum::Token::Kind::Assign, "StringMulEqual", "x="}},
#line 115 "gen/reserved_keywords.gperf"
{"closedir", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "closedir"}},
#line 412 "gen/reserved_keywords.gperf"
{"%INC", {Enum::Token::Type::Include, Enum::Token::Kind::Term, "Include", "%INC"}},
{""}, {""},
#line 342 "gen/reserved_keywords.gperf"
{"%$", {Enum::Token::Type::ShortHashDereference, Enum::Token::Kind::Modifier, "ShortHashDereference", "%$"}},
#line 397 "gen/reserved_keywords.gperf"
{"$^F", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^F"}},
{""},
#line 241 "gen/reserved_keywords.gperf"
{"sethostent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "sethostent"}},
#line 93 "gen/reserved_keywords.gperf"
{"substr", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "substr"}},
#line 347 "gen/reserved_keywords.gperf"
{"::", {Enum::Token::Type::NamespaceResolver, Enum::Token::Kind::Operator, "NamespaceResolver", "::"}},
#line 230 "gen/reserved_keywords.gperf"
{"gethostbyname", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "gethostbyname"}},
#line 166 "gen/reserved_keywords.gperf"
{"exit", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "exit"}},
#line 215 "gen/reserved_keywords.gperf"
{"endhostent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "endhostent"}},
{""},
#line 30 "gen/reserved_keywords.gperf"
{"+=", {Enum::Token::Type::AddEqual, Enum::Token::Kind::Assign, "AddEqual", "+="}},
#line 219 "gen/reserved_keywords.gperf"
{"getgrgid", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getgrgid"}},
#line 79 "gen/reserved_keywords.gperf"
{"chop", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "chop"}},
#line 231 "gen/reserved_keywords.gperf"
{"gethostent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "gethostent"}},
#line 27 "gen/reserved_keywords.gperf"
{"^", {Enum::Token::Type::BitXOr, Enum::Token::Kind::Operator, "BitXOr", "^"}},
#line 175 "gen/reserved_keywords.gperf"
{"getppid", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getppid"}},
#line 221 "gen/reserved_keywords.gperf"
{"getlogin", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getlogin"}},
#line 137 "gen/reserved_keywords.gperf"
{"tell", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "tell"}},
{""},
#line 102 "gen/reserved_keywords.gperf"
{"splice", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "splice"}},
#line 94 "gen/reserved_keywords.gperf"
{"uc", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "uc"}},
#line 254 "gen/reserved_keywords.gperf"
{"exp", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "exp"}},
#line 129 "gen/reserved_keywords.gperf"
{"rewinddir", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "rewinddir"}},
{""},
#line 13 "gen/reserved_keywords.gperf"
{"return", {Enum::Token::Type::Return, Enum::Token::Kind::Return, "Return", "return"}},
#line 40 "gen/reserved_keywords.gperf"
{"<=", {Enum::Token::Type::LessEqual, Enum::Token::Kind::Operator, "LessEqual", "<="}},
#line 405 "gen/reserved_keywords.gperf"
{"$^R", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^R"}},
{""},
#line 271 "gen/reserved_keywords.gperf"
{"BEGIN", {Enum::Token::Type::ModWord, Enum::Token::Kind::ModWord, "ModWord", "BEGIN"}},
#line 110 "gen/reserved_keywords.gperf"
{"exists", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "exists"}},
#line 355 "gen/reserved_keywords.gperf"
{"$_", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$_"}},
{""},
#line 285 "gen/reserved_keywords.gperf"
{"goto", {Enum::Token::Type::Goto, Enum::Token::Kind::Control, "Goto", "goto"}},
#line 279 "gen/reserved_keywords.gperf"
{"STDIN", {Enum::Token::Type::STDIN, Enum::Token::Kind::Handle, "STDIN", "STDIN"}},
#line 201 "gen/reserved_keywords.gperf"
{"socket", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "socket"}},
{""},
#line 86 "gen/reserved_keywords.gperf"
{"ord", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "ord"}},
{""},
#line 409 "gen/reserved_keywords.gperf"
{"@ARGV", {Enum::Token::Type::ProgramArgument, Enum::Token::Kind::Term, "ProgramArgument", "@ARGV"}},
{""},
#line 381 "gen/reserved_keywords.gperf"
{"$^", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^"}},
#line 317 "gen/reserved_keywords.gperf"
{"our", {Enum::Token::Type::OurDecl, Enum::Token::Kind::Decl, "OurDecl", "our"}},
{""}, {""},
#line 76 "gen/reserved_keywords.gperf"
{"!", {Enum::Token::Type::Not, Enum::Token::Kind::SingleTerm, "Not", "!"}},
{""},
#line 229 "gen/reserved_keywords.gperf"
{"gethostbyaddr", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "gethostbyaddr"}},
{""},
#line 162 "gen/reserved_keywords.gperf"
{"utime", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "utime"}},
#line 85 "gen/reserved_keywords.gperf"
{"length", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "length"}},
#line 415 "gen/reserved_keywords.gperf"
{"qq", {Enum::Token::Type::RegDoubleQuote, Enum::Token::Kind::RegPrefix, "RegDoubleQuote", "qq"}},
{""},
#line 411 "gen/reserved_keywords.gperf"
{"%ENV", {Enum::Token::Type::Environment, Enum::Token::Kind::Term, "Environment", "%ENV"}},
{""},
#line 205 "gen/reserved_keywords.gperf"
{"msgrcv", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "msgrcv"}},
#line 65 "gen/reserved_keywords.gperf"
{"|=", {Enum::Token::Type::OrBitEqual, Enum::Token::Kind::Assign, "OrBitEqual", "|="}},
#line 394 "gen/reserved_keywords.gperf"
{"$^A", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^A"}},
{""},
#line 141 "gen/reserved_keywords.gperf"
{"write", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "write"}},
{""},
#line 33 "gen/reserved_keywords.gperf"
{"/=", {Enum::Token::Type::DivEqual, Enum::Token::Kind::Assign, "DivEqual", "/="}},
#line 286 "gen/reserved_keywords.gperf"
{"continue", {Enum::Token::Type::Continue, Enum::Token::Kind::Control, "Continue", "continue"}},
{""}, {""}, {""},
#line 354 "gen/reserved_keywords.gperf"
{"@_", {Enum::Token::Type::ArgumentArray, Enum::Token::Kind::Term, "ArgumentArray", "@_"}},
#line 118 "gen/reserved_keywords.gperf"
{"die", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "die"}},
{""},
#line 202 "gen/reserved_keywords.gperf"
{"socketpair", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "socketpair"}},
#line 196 "gen/reserved_keywords.gperf"
{"listen", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "listen"}},
#line 384 "gen/reserved_keywords.gperf"
{"$!", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$!"}},
#line 226 "gen/reserved_keywords.gperf"
{"setpwent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "setpwent"}},
#line 165 "gen/reserved_keywords.gperf"
{"eval", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "eval"}},
{""}, {""},
#line 287 "gen/reserved_keywords.gperf"
{"do", {Enum::Token::Type::Do, Enum::Token::Kind::Do, "Do", "do"}},
#line 217 "gen/reserved_keywords.gperf"
{"endpwent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "endpwent"}},
{""}, {""},
#line 203 "gen/reserved_keywords.gperf"
{"msgctl", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "msgctl"}},
#line 353 "gen/reserved_keywords.gperf"
{"#@", {Enum::Token::Type::Annotation, Enum::Token::Kind::Annotation, "Annotation", "#@"}},
#line 222 "gen/reserved_keywords.gperf"
{"getpwent", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getpwent"}},
#line 198 "gen/reserved_keywords.gperf"
{"send", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "send"}},
{""},
#line 206 "gen/reserved_keywords.gperf"
{"msgsnd", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "msgsnd"}},
{""},
#line 248 "gen/reserved_keywords.gperf"
{"ref", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "ref"}},
#line 172 "gen/reserved_keywords.gperf"
{"exec", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "exec"}},
{""},
#line 210 "gen/reserved_keywords.gperf"
{"shmctl", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "shmctl"}},
#line 138 "gen/reserved_keywords.gperf"
{"telldir", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "telldir"}},
#line 200 "gen/reserved_keywords.gperf"
{"shutdown", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "shutdown"}},
{""},
#line 189 "gen/reserved_keywords.gperf"
{"untie", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "untie"}},
#line 22 "gen/reserved_keywords.gperf"
{"\\", {Enum::Token::Type::Ref, Enum::Token::Kind::Operator, "Ref", "\\"}},
#line 154 "gen/reserved_keywords.gperf"
{"opendir", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "opendir"}},
#line 274 "gen/reserved_keywords.gperf"
{"END", {Enum::Token::Type::ModWord, Enum::Token::Kind::ModWord, "ModWord", "END"}},
{""}, {""}, {""},
#line 212 "gen/reserved_keywords.gperf"
{"shmread", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "shmread"}},
#line 403 "gen/reserved_keywords.gperf"
{"$^O", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^O"}},
#line 130 "gen/reserved_keywords.gperf"
{"seek", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "seek"}},
{""},
#line 23 "gen/reserved_keywords.gperf"
{"~", {Enum::Token::Type::BitNot, Enum::Token::Kind::Operator, "BitNot", "~"}},
{""},
#line 28 "gen/reserved_keywords.gperf"
{"xor", {Enum::Token::Type::AlphabetXOr, Enum::Token::Kind::Operator, "AlphabetXOr", "xor"}},
#line 127 "gen/reserved_keywords.gperf"
{"read", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "read"}},
{""},
#line 190 "gen/reserved_keywords.gperf"
{"accept", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "accept"}},
#line 45 "gen/reserved_keywords.gperf"
{"=~", {Enum::Token::Type::RegOK, Enum::Token::Kind::Operator, "RegOK", "=~"}},
#line 255 "gen/reserved_keywords.gperf"
{"hex", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "hex"}},
#line 277 "gen/reserved_keywords.gperf"
{"CORE", {Enum::Token::Type::CORE, Enum::Token::Kind::CORE, "CORE", "CORE"}},
{""},
#line 146 "gen/reserved_keywords.gperf"
{"chroot", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "chroot"}},
#line 263 "gen/reserved_keywords.gperf"
{"require", {Enum::Token::Type::RequireDecl, Enum::Token::Kind::Decl, "RequireDecl", "require"}},
#line 395 "gen/reserved_keywords.gperf"
{"$^D", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^D"}},
#line 413 "gen/reserved_keywords.gperf"
{"%SIG", {Enum::Token::Type::Signal, Enum::Token::Kind::Term, "Signal", "%SIG"}},
{""}, {""},
#line 375 "gen/reserved_keywords.gperf"
{"$\\", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$\\"}},
#line 408 "gen/reserved_keywords.gperf"
{"$^X", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^X"}},
#line 275 "gen/reserved_keywords.gperf"
{"UNITCHECK", {Enum::Token::Type::ModWord, Enum::Token::Kind::ModWord, "ModWord", "UNITCHECK"}},
#line 252 "gen/reserved_keywords.gperf"
{"atan2", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "atan2"}},
{""}, {""},
#line 119 "gen/reserved_keywords.gperf"
{"eof", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "eof"}},
{""},
#line 78 "gen/reserved_keywords.gperf"
{"chomp", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "chomp"}},
{""},
#line 380 "gen/reserved_keywords.gperf"
{"$~", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$~"}},
{""}, {""}, {""},
#line 17 "gen/reserved_keywords.gperf"
{"%", {Enum::Token::Type::Mod, Enum::Token::Kind::Operator, "Mod", "%"}},
#line 131 "gen/reserved_keywords.gperf"
{"seekdir", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "seekdir"}},
{""}, {""}, {""}, {""},
#line 84 "gen/reserved_keywords.gperf"
{"lcfirst", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "lcfirst"}},
#line 407 "gen/reserved_keywords.gperf"
{"$^W", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^W"}},
#line 164 "gen/reserved_keywords.gperf"
{"dump", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "dump"}},
#line 262 "gen/reserved_keywords.gperf"
{"srand", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "srand"}},
#line 21 "gen/reserved_keywords.gperf"
{".", {Enum::Token::Type::StringAdd, Enum::Token::Kind::Operator, "StringAdd", "."}},
{""},
#line 402 "gen/reserved_keywords.gperf"
{"$^M", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$^M"}},
{""}, {""}, {""},
#line 128 "gen/reserved_keywords.gperf"
{"readdir", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "readdir"}},
#line 266 "gen/reserved_keywords.gperf"
{"__FILE__", {Enum::Token::Type::SpecificKeyword, Enum::Token::Kind::SpecificKeyword, "SpecificKeyword", "__FILE__"}},
#line 284 "gen/reserved_keywords.gperf"
{"last", {Enum::Token::Type::Last, Enum::Token::Kind::Control, "Last", "last"}},
#line 157 "gen/reserved_keywords.gperf"
{"rmdir", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "rmdir"}},
#line 126 "gen/reserved_keywords.gperf"
{"printf", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "printf"}},
{""}, {""}, {""}, {""}, {""},
#line 377 "gen/reserved_keywords.gperf"
{"$%", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$%"}},
#line 107 "gen/reserved_keywords.gperf"
{"map", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "map"}},
{""}, {""},
#line 264 "gen/reserved_keywords.gperf"
{"import", {Enum::Token::Type::Import, Enum::Token::Kind::Import, "Import", "import"}},
{""},
#line 351 "gen/reserved_keywords.gperf"
{"for", {Enum::Token::Type::ForStmt, Enum::Token::Kind::Stmt, "ForStmt", "for"}},
{""},
#line 151 "gen/reserved_keywords.gperf"
{"lstat", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "lstat"}},
#line 156 "gen/reserved_keywords.gperf"
{"rename", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "rename"}},
#line 370 "gen/reserved_keywords.gperf"
{"$.", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$."}},
#line 58 "gen/reserved_keywords.gperf"
{"**=", {Enum::Token::Type::PowerEqual, Enum::Token::Kind::Assign, "PowerEqual", "**="}},
#line 325 "gen/reserved_keywords.gperf"
{"when", {Enum::Token::Type::WhenStmt, Enum::Token::Kind::Stmt, "WhenStmt", "when"}},
#line 143 "gen/reserved_keywords.gperf"
{"chdir", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "chdir"}},
#line 245 "gen/reserved_keywords.gperf"
{"gmtime", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "gmtime"}},
#line 95 "gen/reserved_keywords.gperf"
{"ucfirst", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "ucfirst"}},
{""}, {""}, {""}, {""},
#line 75 "gen/reserved_keywords.gperf"
{"$#", {Enum::Token::Type::ArraySize, Enum::Token::Kind::SingleTerm, "ArraySize", "$#"}},
#line 26 "gen/reserved_keywords.gperf"
{"and", {Enum::Token::Type::AlphabetAnd, Enum::Token::Kind::Operator, "AlphabetAnd", "and"}},
{""}, {""},
#line 336 "gen/reserved_keywords.gperf"
{"]", {Enum::Token::Type::RightBracket, Enum::Token::Kind::Symbol, "RightBracket", "]"}},
#line 292 "gen/reserved_keywords.gperf"
{"-e", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-e"}},
#line 223 "gen/reserved_keywords.gperf"
{"getpwnam", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getpwnam"}},
{""}, {""}, {""},
#line 373 "gen/reserved_keywords.gperf"
{"$*", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$*"}},
#line 213 "gen/reserved_keywords.gperf"
{"shmwrite", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "shmwrite"}},
{""}, {""},
#line 19 "gen/reserved_keywords.gperf"
{">", {Enum::Token::Type::Greater, Enum::Token::Kind::Operator, "Greater", ">"}},
#line 31 "gen/reserved_keywords.gperf"
{"-=", {Enum::Token::Type::SubEqual, Enum::Token::Kind::Assign, "SubEqual", "-="}},
#line 267 "gen/reserved_keywords.gperf"
{"__LINE__", {Enum::Token::Type::SpecificKeyword, Enum::Token::Kind::SpecificKeyword, "SpecificKeyword", "__LINE__"}},
{""}, {""},
#line 281 "gen/reserved_keywords.gperf"
{"STDERR", {Enum::Token::Type::STDERR, Enum::Token::Kind::Handle, "STDERR", "STDERR"}},
#line 345 "gen/reserved_keywords.gperf"
{"=>", {Enum::Token::Type::Arrow, Enum::Token::Kind::Operator, "Arrow", "=>"}},
#line 37 "gen/reserved_keywords.gperf"
{">>=", {Enum::Token::Type::RightShiftEqual, Enum::Token::Kind::Assign, "RightShiftEqual", ">>="}},
{""},
#line 249 "gen/reserved_keywords.gperf"
{"bless", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "bless"}},
#line 29 "gen/reserved_keywords.gperf"
{"x", {Enum::Token::Type::StringMul, Enum::Token::Kind::Operator, "StringMul", "x"}},
#line 301 "gen/reserved_keywords.gperf"
{"-t", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-t"}},
#line 73 "gen/reserved_keywords.gperf"
{"sub", {Enum::Token::Type::FunctionDecl, Enum::Token::Kind::Decl, "FunctionDecl", "sub"}},
#line 101 "gen/reserved_keywords.gperf"
{"push", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "push"}},
#line 103 "gen/reserved_keywords.gperf"
{"shift", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "shift"}},
#line 180 "gen/reserved_keywords.gperf"
{"setpriority", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "setpriority"}},
#line 392 "gen/reserved_keywords.gperf"
{"$]", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$]"}},
{""}, {""}, {""}, {""},
#line 300 "gen/reserved_keywords.gperf"
{"-s", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-s"}},
{""}, {""}, {""},
#line 176 "gen/reserved_keywords.gperf"
{"getpriority", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getpriority"}},
#line 388 "gen/reserved_keywords.gperf"
{"$>", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$>"}},
#line 224 "gen/reserved_keywords.gperf"
{"getpwuid", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "getpwuid"}},
{""},
#line 145 "gen/reserved_keywords.gperf"
{"chown", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "chown"}},
#line 163 "gen/reserved_keywords.gperf"
{"caller", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "caller"}},
#line 308 "gen/reserved_keywords.gperf"
{"-C", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-C"}},
{""},
#line 188 "gen/reserved_keywords.gperf"
{"tied", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "tied"}},
{""}, {""},
#line 104 "gen/reserved_keywords.gperf"
{"unshift", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "unshift"}},
{""}, {""}, {""},
#line 14 "gen/reserved_keywords.gperf"
{"+", {Enum::Token::Type::Add, Enum::Token::Kind::Operator, "Add", "+"}},
#line 294 "gen/reserved_keywords.gperf"
{"-g", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-g"}},
#line 43 "gen/reserved_keywords.gperf"
{"<=>", {Enum::Token::Type::Compare, Enum::Token::Kind::Operator, "Compare", "<=>"}},
{""}, {""},
#line 170 "gen/reserved_keywords.gperf"
{"scalar", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "scalar"}},
#line 250 "gen/reserved_keywords.gperf"
{"defined", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "defined"}},
#line 155 "gen/reserved_keywords.gperf"
{"readlink", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "readlink"}},
{""}, {""}, {""},
#line 46 "gen/reserved_keywords.gperf"
{"!~", {Enum::Token::Type::RegNot, Enum::Token::Kind::Operator, "RegNot", "!~"}},
{""}, {""},
#line 149 "gen/reserved_keywords.gperf"
{"ioctl", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "ioctl"}},
#line 112 "gen/reserved_keywords.gperf"
{"values", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "values"}},
#line 278 "gen/reserved_keywords.gperf"
{"DESTROY", {Enum::Token::Type::DESTROY, Enum::Token::Kind::DESTROY, "DESTROY", "DESTROY"}},
{""}, {""},
#line 350 "gen/reserved_keywords.gperf"
{"while", {Enum::Token::Type::WhileStmt, Enum::Token::Kind::Stmt, "WhileStmt", "while"}},
#line 182 "gen/reserved_keywords.gperf"
{"system", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "system"}},
#line 298 "gen/reserved_keywords.gperf"
{"-p", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-p"}},
{""}, {""}, {""}, {""},
#line 369 "gen/reserved_keywords.gperf"
{"$+", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$+"}},
{""},
#line 109 "gen/reserved_keywords.gperf"
{"each", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "each"}},
{""},
#line 20 "gen/reserved_keywords.gperf"
{"<", {Enum::Token::Type::Less, Enum::Token::Kind::Operator, "Less", "<"}},
#line 299 "gen/reserved_keywords.gperf"
{"-r", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-r"}},
{""}, {""}, {""}, {""},
#line 92 "gen/reserved_keywords.gperf"
{"sprintf", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "sprintf"}},
#line 36 "gen/reserved_keywords.gperf"
{"<<=", {Enum::Token::Type::LeftShiftEqual, Enum::Token::Kind::Assign, "LeftShiftEqual", "<<="}},
#line 184 "gen/reserved_keywords.gperf"
{"wait", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "wait"}},
#line 152 "gen/reserved_keywords.gperf"
{"mkdir", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "mkdir"}},
#line 161 "gen/reserved_keywords.gperf"
{"unlink", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "unlink"}},
#line 44 "gen/reserved_keywords.gperf"
{"~~", {Enum::Token::Type::PolymorphicCompare, Enum::Token::Kind::Operator, "PolymorphicCompare", "~~"}},
{""},
#line 97 "gen/reserved_keywords.gperf"
{"quotemeta", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "quotemeta"}},
{""}, {""},
#line 364 "gen/reserved_keywords.gperf"
{"$8", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$8"}},
#line 344 "gen/reserved_keywords.gperf"
{"$#{", {Enum::Token::Type::ArraySizeDereference, Enum::Token::Kind::Modifier, "ArraySizeDereference", "$#{"}},
{""}, {""},
#line 335 "gen/reserved_keywords.gperf"
{"[", {Enum::Token::Type::LeftBracket, Enum::Token::Kind::Symbol, "LeftBracket", "["}},
#line 290 "gen/reserved_keywords.gperf"
{"-c", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-c"}},
{""}, {""}, {""}, {""},
#line 387 "gen/reserved_keywords.gperf"
{"$<", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$<"}},
{""},
#line 140 "gen/reserved_keywords.gperf"
{"warn", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "warn"}},
{""},
#line 265 "gen/reserved_keywords.gperf"
{"__PACKAGE__", {Enum::Token::Type::SpecificKeyword, Enum::Token::Kind::SpecificKeyword, "SpecificKeyword", "__PACKAGE__"}},
#line 313 "gen/reserved_keywords.gperf"
{"-T", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-T"}},
#line 251 "gen/reserved_keywords.gperf"
{"abs", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "abs"}},
{""}, {""},
#line 120 "gen/reserved_keywords.gperf"
{"fileno", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "fileno"}},
#line 417 "gen/reserved_keywords.gperf"
{"qx", {Enum::Token::Type::RegExec, Enum::Token::Kind::RegPrefix, "RegExec", "qx"}},
{""}, {""}, {""}, {""},
#line 135 "gen/reserved_keywords.gperf"
{"sysseek", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "sysseek"}},
{""}, {""}, {""}, {""},
#line 391 "gen/reserved_keywords.gperf"
{"$[", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$["}},
{""}, {""}, {""}, {""},
#line 307 "gen/reserved_keywords.gperf"
{"-B", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-B"}},
{""},
#line 177 "gen/reserved_keywords.gperf"
{"kill", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "kill"}},
{""}, {""},
#line 134 "gen/reserved_keywords.gperf"
{"sysread", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "sysread"}},
{""}, {""},
#line 144 "gen/reserved_keywords.gperf"
{"chmod", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "chmod"}},
#line 24 "gen/reserved_keywords.gperf"
{"|", {Enum::Token::Type::BitOr, Enum::Token::Kind::Operator, "BitOr", "|"}},
#line 117 "gen/reserved_keywords.gperf"
{"dbmopen", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "dbmopen"}},
#line 269 "gen/reserved_keywords.gperf"
{"__DATA__", {Enum::Token::Type::DataWord, Enum::Token::Kind::DataWord, "DataWord", "__DATA__"}},
{""}, {""},
#line 91 "gen/reserved_keywords.gperf"
{"rindex", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "rindex"}},
#line 327 "gen/reserved_keywords.gperf"
{"default", {Enum::Token::Type::DefaultStmt, Enum::Token::Kind::DefaultStmt, "DefaultStmt", "default"}},
#line 67 "gen/reserved_keywords.gperf"
{"||=", {Enum::Token::Type::OrEqual, Enum::Token::Kind::Assign, "OrEqual", "||="}},
{""},
#line 324 "gen/reserved_keywords.gperf"
{"until", {Enum::Token::Type::UntilStmt, Enum::Token::Kind::Stmt, "UntilStmt", "until"}},
#line 16 "gen/reserved_keywords.gperf"
{"/", {Enum::Token::Type::Div, Enum::Token::Kind::Operator, "Div", "/"}},
#line 69 "gen/reserved_keywords.gperf"
{"..", {Enum::Token::Type::Slice, Enum::Token::Kind::Operator, "Slice", ".."}},
#line 71 "gen/reserved_keywords.gperf"
{"...", {Enum::Token::Type::ToDo, Enum::Token::Kind::Operator, "ToDo", "..."}},
#line 246 "gen/reserved_keywords.gperf"
{"localtime", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "localtime"}},
{""}, {""},
#line 416 "gen/reserved_keywords.gperf"
{"qw", {Enum::Token::Type::RegList, Enum::Token::Kind::RegPrefix, "RegList", "qw"}},
#line 59 "gen/reserved_keywords.gperf"
{"//=", {Enum::Token::Type::DefaultEqual, Enum::Token::Kind::Assign, "DefaultEqual", "//="}},
{""}, {""},
#line 18 "gen/reserved_keywords.gperf"
{"?", {Enum::Token::Type::ThreeTermOperator, Enum::Token::Kind::Operator, "ThreeTermOperator", "?"}},
#line 297 "gen/reserved_keywords.gperf"
{"-o", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-o"}},
{""}, {""},
#line 147 "gen/reserved_keywords.gperf"
{"fcntl", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "fcntl"}},
#line 280 "gen/reserved_keywords.gperf"
{"STDOUT", {Enum::Token::Type::STDOUT, Enum::Token::Kind::Handle, "STDOUT", "STDOUT"}},
#line 372 "gen/reserved_keywords.gperf"
{"$|", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$|"}},
{""},
#line 259 "gen/reserved_keywords.gperf"
{"rand", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "rand"}},
{""},
#line 333 "gen/reserved_keywords.gperf"
{"{", {Enum::Token::Type::LeftBrace, Enum::Token::Kind::Symbol, "LeftBrace", "{"}},
#line 312 "gen/reserved_keywords.gperf"
{"-S", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-S"}},
{""},
#line 150 "gen/reserved_keywords.gperf"
{"link", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "link"}},
{""}, {""},
#line 371 "gen/reserved_keywords.gperf"
{"$/", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$/"}},
#line 116 "gen/reserved_keywords.gperf"
{"dbmclose", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "dbmclose"}},
{""}, {""}, {""},
#line 57 "gen/reserved_keywords.gperf"
{"**", {Enum::Token::Type::Exp, Enum::Token::Kind::Operator, "Exp", "**"}},
#line 168 "gen/reserved_keywords.gperf"
{"formline", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "formline"}},
#line 87 "gen/reserved_keywords.gperf"
{"pack", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "pack"}},
{""}, {""},
#line 383 "gen/reserved_keywords.gperf"
{"$?", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$?"}},
#line 125 "gen/reserved_keywords.gperf"
{"say", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "say"}},
{""},
#line 160 "gen/reserved_keywords.gperf"
{"umask", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "umask"}},
#line 330 "gen/reserved_keywords.gperf"
{";", {Enum::Token::Type::SemiColon, Enum::Token::Kind::StmtEnd, "SemiColon", ";"}},
#line 340 "gen/reserved_keywords.gperf"
{"&{", {Enum::Token::Type::CodeDereference, Enum::Token::Kind::Modifier, "CodeDereference", "&{"}},
{""}, {""},
#line 82 "gen/reserved_keywords.gperf"
{"index", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "index"}},
{""},
#line 339 "gen/reserved_keywords.gperf"
{"${", {Enum::Token::Type::ScalarDereference, Enum::Token::Kind::Modifier, "ScalarDereference", "${"}},
{""}, {""}, {""}, {""},
#line 113 "gen/reserved_keywords.gperf"
{"binmode", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "binmode"}},
{""}, {""}, {""}, {""},
#line 270 "gen/reserved_keywords.gperf"
{"__END__", {Enum::Token::Type::DataWord, Enum::Token::Kind::DataWord, "DataWord", "__END__"}},
{""}, {""}, {""},
#line 328 "gen/reserved_keywords.gperf"
{",", {Enum::Token::Type::Comma, Enum::Token::Kind::Comma, "Comma", ","}},
#line 268 "gen/reserved_keywords.gperf"
{"__SUB__", {Enum::Token::Type::SpecificKeyword, Enum::Token::Kind::SpecificKeyword, "SpecificKeyword", "__SUB__"}},
{""}, {""}, {""},
#line 88 "gen/reserved_keywords.gperf"
{"unpack", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "unpack"}},
#line 393 "gen/reserved_keywords.gperf"
{"$;", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$;"}},
{""}, {""},
#line 171 "gen/reserved_keywords.gperf"
{"alarm", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "alarm"}},
#line 332 "gen/reserved_keywords.gperf"
{")", {Enum::Token::Type::RightParenthesis, Enum::Token::Kind::Symbol, "RightParenthesis", ")"}},
#line 311 "gen/reserved_keywords.gperf"
{"-R", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-R"}},
{""}, {""}, {""}, {""},
#line 61 "gen/reserved_keywords.gperf"
{">>", {Enum::Token::Type::RightShift, Enum::Token::Kind::Operator, "RightShift", ">>"}},
#line 136 "gen/reserved_keywords.gperf"
{"syswrite", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "syswrite"}},
{""}, {""},
#line 331 "gen/reserved_keywords.gperf"
{"(", {Enum::Token::Type::LeftParenthesis, Enum::Token::Kind::Symbol, "LeftParenthesis", "("}},
#line 337 "gen/reserved_keywords.gperf"
{"@{", {Enum::Token::Type::ArrayDereference, Enum::Token::Kind::Modifier, "ArrayDereference", "@{"}},
{""}, {""}, {""}, {""},
#line 374 "gen/reserved_keywords.gperf"
{"$,", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$,"}},
{""}, {""}, {""}, {""},
#line 296 "gen/reserved_keywords.gperf"
{"-l", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-l"}},
{""}, {""}, {""}, {""},
#line 390 "gen/reserved_keywords.gperf"
{"$)", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$)"}},
{""}, {""}, {""}, {""},
#line 305 "gen/reserved_keywords.gperf"
{"-z", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-z"}},
{""}, {""}, {""}, {""},
#line 389 "gen/reserved_keywords.gperf"
{"$(", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$("}},
{""}, {""}, {""}, {""},
#line 42 "gen/reserved_keywords.gperf"
{"<>", {Enum::Token::Type::Diamond, Enum::Token::Kind::Operator, "Diamond", "<>"}},
{""},
#line 173 "gen/reserved_keywords.gperf"
{"fork", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "fork"}},
{""}, {""},
#line 185 "gen/reserved_keywords.gperf"
{"waitpid", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "waitpid"}},
{""},
#line 148 "gen/reserved_keywords.gperf"
{"glob", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "glob"}},
#line 316 "gen/reserved_keywords.gperf"
{"local", {Enum::Token::Type::LocalDecl, Enum::Token::Kind::Decl, "LocalDecl", "local"}},
#line 421 "gen/reserved_keywords.gperf"
{"y", {Enum::Token::Type::RegAllReplace, Enum::Token::Kind::RegReplacePrefix, "RegAllReplace", "y"}},
#line 348 "gen/reserved_keywords.gperf"
{"package", {Enum::Token::Type::Package, Enum::Token::Kind::Package, "Package", "package"}},
{""}, {""}, {""}, {""},
#line 363 "gen/reserved_keywords.gperf"
{"$7", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$7"}},
{""}, {""}, {""}, {""},
#line 306 "gen/reserved_keywords.gperf"
{"-A", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-A"}},
{""}, {""}, {""}, {""},
#line 55 "gen/reserved_keywords.gperf"
{"++", {Enum::Token::Type::Inc, Enum::Token::Kind::Operator, "Inc", "++"}},
{""}, {""}, {""}, {""},
#line 320 "gen/reserved_keywords.gperf"
{"if", {Enum::Token::Type::IfStmt, Enum::Token::Kind::Stmt, "IfStmt", "if"}},
{""}, {""}, {""}, {""},
#line 362 "gen/reserved_keywords.gperf"
{"$6", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$6"}},
{""}, {""}, {""}, {""},
#line 291 "gen/reserved_keywords.gperf"
{"-d", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-d"}},
{""},
#line 191 "gen/reserved_keywords.gperf"
{"bind", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "bind"}},
{""}, {""},
#line 361 "gen/reserved_keywords.gperf"
{"$5", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$5"}},
{""}, {""}, {""}, {""},
#line 302 "gen/reserved_keywords.gperf"
{"-u", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-u"}},
{""}, {""}, {""},
#line 122 "gen/reserved_keywords.gperf"
{"format", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "format"}},
#line 352 "gen/reserved_keywords.gperf"
{"foreach", {Enum::Token::Type::ForeachStmt, Enum::Token::Kind::Stmt, "ForeachStmt", "foreach"}},
{""}, {""},
#line 423 "gen/reserved_keywords.gperf"
{"undef", {Enum::Token::Type::Default, Enum::Token::Kind::Term, "Default", "undef"}},
{""},
#line 295 "gen/reserved_keywords.gperf"
{"-k", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-k"}},
{""}, {""}, {""}, {""},
#line 360 "gen/reserved_keywords.gperf"
{"$4", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$4"}},
#line 276 "gen/reserved_keywords.gperf"
{"AUTOLOAD", {Enum::Token::Type::AUTOLOAD, Enum::Token::Kind::AUTOLOAD, "AUTOLOAD", "AUTOLOAD"}},
{""}, {""}, {""},
#line 60 "gen/reserved_keywords.gperf"
{"<<", {Enum::Token::Type::LeftShift, Enum::Token::Kind::Operator, "LeftShift", "<<"}},
{""}, {""}, {""}, {""},
#line 359 "gen/reserved_keywords.gperf"
{"$3", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$3"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
#line 357 "gen/reserved_keywords.gperf"
{"$1", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$1"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""},
#line 121 "gen/reserved_keywords.gperf"
{"flock", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "flock"}},
{""},
#line 338 "gen/reserved_keywords.gperf"
{"%{", {Enum::Token::Type::HashDereference, Enum::Token::Kind::Modifier, "HashDereference", "%{"}},
{""}, {""}, {""}, {""},
#line 133 "gen/reserved_keywords.gperf"
{"syscall", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "syscall"}},
{""}, {""}, {""}, {""},
#line 356 "gen/reserved_keywords.gperf"
{"$0", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$0"}},
{""}, {""}, {""}, {""},
#line 310 "gen/reserved_keywords.gperf"
{"-O", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-O"}},
{""}, {""}, {""}, {""},
#line 159 "gen/reserved_keywords.gperf"
{"symlink", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "symlink"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
#line 72 "gen/reserved_keywords.gperf"
{"my", {Enum::Token::Type::VarDecl, Enum::Token::Kind::Decl, "VarDecl", "my"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
#line 368 "gen/reserved_keywords.gperf"
{"$'", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$'"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
#line 376 "gen/reserved_keywords.gperf"
{"$\"", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$\""}},
{""}, {""}, {""}, {""},
#line 315 "gen/reserved_keywords.gperf"
{"-X", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-X"}},
{""}, {""},
#line 322 "gen/reserved_keywords.gperf"
{"elsif", {Enum::Token::Type::ElsifStmt, Enum::Token::Kind::Stmt, "ElsifStmt", "elsif"}},
{""}, {""}, {""}, {""}, {""},
#line 15 "gen/reserved_keywords.gperf"
{"-", {Enum::Token::Type::Sub, Enum::Token::Kind::Operator, "Sub", "-"}},
#line 63 "gen/reserved_keywords.gperf"
{"||", {Enum::Token::Type::Or, Enum::Token::Kind::Operator, "Or", "||"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
#line 346 "gen/reserved_keywords.gperf"
{"->", {Enum::Token::Type::Pointer, Enum::Token::Kind::Operator, "Pointer", "->"}},
{""}, {""}, {""}, {""},
#line 70 "gen/reserved_keywords.gperf"
{"//", {Enum::Token::Type::DefaultOperator, Enum::Token::Kind::Operator, "DefaultOperator", "//"}},
{""}, {""}, {""}, {""},
#line 304 "gen/reserved_keywords.gperf"
{"-x", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-x"}},
{""}, {""}, {""}, {""},
#line 379 "gen/reserved_keywords.gperf"
{"$-", {Enum::Token::Type::SpecificValue, Enum::Token::Kind::Term, "SpecificValue", "$-"}},
{""}, {""},
#line 99 "gen/reserved_keywords.gperf"
{"study", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "study"}},
{""},
#line 314 "gen/reserved_keywords.gperf"
{"-W", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-W"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""},
#line 288 "gen/reserved_keywords.gperf"
{"break", {Enum::Token::Type::Break, Enum::Token::Kind::Control, "Break", "break"}},
{""},
#line 309 "gen/reserved_keywords.gperf"
{"-M", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-M"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""},
#line 303 "gen/reserved_keywords.gperf"
{"-w", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-w"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""},
#line 289 "gen/reserved_keywords.gperf"
{"-b", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-b"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""},
#line 293 "gen/reserved_keywords.gperf"
{"-f", {Enum::Token::Type::Handle, Enum::Token::Kind::Handle, "Handle", "-f"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""},
#line 167 "gen/reserved_keywords.gperf"
{"wantarray", {Enum::Token::Type::BuiltinFunc, Enum::Token::Kind::Function, "BuiltinFunc", "wantarray"}},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""},
#line 56 "gen/reserved_keywords.gperf"
{"--", {Enum::Token::Type::Dec, Enum::Token::Kind::Operator, "Dec", "--"}}
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
{
register int key = hash (str, len);
if (key <= MAX_HASH_VALUE && key >= 0)
{
register const char *s = wordlist[key].name;
if (*str == *s && !strcmp (str + 1, s + 1))
return &wordlist[key];
}
}
return 0;
}
#line 424 "gen/reserved_keywords.gperf"