X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdata%2Fidentifier.c;h=d9d9b2a6444c25a8f76fec3df66089e1306e6b40;hb=18cbae3479d770c1f517ee2ccc060c7457f2a0d7;hp=07c7675bd5a3000cf3742c85505bf68b2174ebd3;hpb=6e0b939b8b107b911275b616f2cef6773a523d9f;p=pspp diff --git a/src/data/identifier.c b/src/data/identifier.c index 07c7675bd5..d9d9b2a644 100644 --- a/src/data/identifier.c +++ b/src/data/identifier.c @@ -99,9 +99,21 @@ token_type_to_string (enum token_type token) case T_RBRACK: return "]"; + case T_LCURLY: + return "{"; + + case T_RCURLY: + return "}"; + case T_COMMA: return ","; + case T_SEMICOLON: + return ";"; + + case T_COLON: + return ":"; + case T_AND: return "AND"; @@ -304,14 +316,14 @@ static const struct keyword keywords[] = { T_TO, SS_LITERAL_INITIALIZER ("TO") }, { T_WITH, SS_LITERAL_INITIALIZER ("WITH") }, }; -static const size_t keyword_cnt = sizeof keywords / sizeof *keywords; +static const size_t n_keywords = sizeof keywords / sizeof *keywords; /* Returns true if TOKEN is representable as a keyword. */ bool lex_is_keyword (enum token_type token) { const struct keyword *kw; - for (kw = keywords; kw < &keywords[keyword_cnt]; kw++) + for (kw = keywords; kw < &keywords[n_keywords]; kw++) if (kw->token == token) return true; return false; @@ -325,7 +337,7 @@ lex_id_to_token (struct substring id) if (ss_length (id) >= 2 && ss_length (id) <= 4) { const struct keyword *kw; - for (kw = keywords; kw < &keywords[keyword_cnt]; kw++) + for (kw = keywords; kw < &keywords[n_keywords]; kw++) if (ss_equals_case (kw->identifier, id)) return kw->token; }