diff options
author | Nikita Popov <nikita.ppv@gmail.com> | 2020-06-15 11:50:55 +0200 |
---|---|---|
committer | Nikita Popov <nikita.ppv@gmail.com> | 2020-07-22 12:36:05 +0200 |
commit | 7a3dcc3e339cde2177ba4fe8fc45f78c94dfbb29 (patch) | |
tree | 7750f94dceba15437e3dad497734d3b1d65b4e4b /ext/tokenizer/tokenizer_data.c | |
parent | acbf7802af7b88d16497971494f5dc42c4e08ce6 (diff) | |
download | php-git-7a3dcc3e339cde2177ba4fe8fc45f78c94dfbb29.tar.gz |
Treat namespaced names as single token
Namespace names are now lexed as single tokens of type
T_NAME_QUALIFIED, T_NAME_FULLY_QUALIFIED or T_NAME_RELATIVE.
RFC: https://wiki.php.net/rfc/namespaced_names_as_token
Closes GH-5827.
Diffstat (limited to 'ext/tokenizer/tokenizer_data.c')
-rw-r--r-- | ext/tokenizer/tokenizer_data.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ext/tokenizer/tokenizer_data.c b/ext/tokenizer/tokenizer_data.c index 14630cdd40..9ed027920c 100644 --- a/ext/tokenizer/tokenizer_data.c +++ b/ext/tokenizer/tokenizer_data.c @@ -77,6 +77,9 @@ void tokenizer_register_constants(INIT_FUNC_ARGS) { REGISTER_LONG_CONSTANT("T_LNUMBER", T_LNUMBER, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_DNUMBER", T_DNUMBER, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_STRING", T_STRING, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("T_NAME_FULLY_QUALIFIED", T_NAME_FULLY_QUALIFIED, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("T_NAME_RELATIVE", T_NAME_RELATIVE, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("T_NAME_QUALIFIED", T_NAME_QUALIFIED, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_VARIABLE", T_VARIABLE, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_INLINE_HTML", T_INLINE_HTML, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_ENCAPSED_AND_WHITESPACE", T_ENCAPSED_AND_WHITESPACE, CONST_CS | CONST_PERSISTENT); @@ -221,6 +224,9 @@ char *get_token_type_name(int token_type) case T_LNUMBER: return "T_LNUMBER"; case T_DNUMBER: return "T_DNUMBER"; case T_STRING: return "T_STRING"; + case T_NAME_FULLY_QUALIFIED: return "T_NAME_FULLY_QUALIFIED"; + case T_NAME_RELATIVE: return "T_NAME_RELATIVE"; + case T_NAME_QUALIFIED: return "T_NAME_QUALIFIED"; case T_VARIABLE: return "T_VARIABLE"; case T_INLINE_HTML: return "T_INLINE_HTML"; case T_ENCAPSED_AND_WHITESPACE: return "T_ENCAPSED_AND_WHITESPACE"; |