Skip to content

Commit 59d257d

Browse files
authored
Declare ext/tokenizer constants in stubs (#9148)
1 parent dd9f477 commit 59d257d

File tree

9 files changed

+938
-187
lines changed

9 files changed

+938
-187
lines changed

.github/actions/verify-generated-files/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ runs:
99
scripts/dev/credits
1010
scripts/dev/genfiles
1111
Zend/zend_vm_gen.php
12+
ext/tokenizer/tokenizer_data_gen.php
1213
build/gen_stub.php -f
1314
build/gen_stub.php --generate-optimizer-info
14-
ext/tokenizer/tokenizer_data_gen.php
1515
git add . -N && git diff --exit-code

ext/tokenizer/php_tokenizer.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,12 @@ extern zend_module_entry tokenizer_module_entry;
2323
#include "php_version.h"
2424
#define PHP_TOKENIZER_VERSION PHP_VERSION
2525

26+
#define TOKEN_PARSE (1 << 0)
27+
2628
#ifdef ZTS
2729
#include "TSRM.h"
2830
#endif
2931

30-
void tokenizer_register_constants(INIT_FUNC_ARGS);
3132
char *get_token_type_name(int token_type);
3233

3334

ext/tokenizer/tokenizer.c

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
#include "php_ini.h"
2323
#include "ext/standard/info.h"
2424
#include "php_tokenizer.h"
25-
#include "tokenizer_arginfo.h"
2625

2726
#include "zend.h"
2827
#include "zend_exceptions.h"
@@ -31,19 +30,16 @@
3130
#include <zend_language_parser.h>
3231
#include "zend_interfaces.h"
3332

33+
#include "tokenizer_data_arginfo.h"
34+
#include "tokenizer_arginfo.h"
35+
3436
#define zendtext LANG_SCNG(yy_text)
3537
#define zendleng LANG_SCNG(yy_leng)
3638
#define zendcursor LANG_SCNG(yy_cursor)
3739
#define zendlimit LANG_SCNG(yy_limit)
3840

39-
#define TOKEN_PARSE (1 << 0)
40-
4141
zend_class_entry *php_token_ce;
4242

43-
void tokenizer_token_get_all_register_constants(INIT_FUNC_ARGS) {
44-
REGISTER_LONG_CONSTANT("TOKEN_PARSE", TOKEN_PARSE, CONST_CS|CONST_PERSISTENT);
45-
}
46-
4743
/* {{{ tokenizer_module_entry */
4844
zend_module_entry tokenizer_module_entry = {
4945
STANDARD_MODULE_HEADER,
@@ -251,8 +247,8 @@ PHP_METHOD(PhpToken, __toString)
251247
/* {{{ PHP_MINIT_FUNCTION */
252248
PHP_MINIT_FUNCTION(tokenizer)
253249
{
254-
tokenizer_register_constants(INIT_FUNC_ARGS_PASSTHRU);
255-
tokenizer_token_get_all_register_constants(INIT_FUNC_ARGS_PASSTHRU);
250+
register_tokenizer_data_symbols(module_number);
251+
register_tokenizer_symbols(module_number);
256252
php_token_ce = register_class_PhpToken(zend_ce_stringable);
257253

258254
return SUCCESS;

ext/tokenizer/tokenizer.stub.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@
22

33
/** @generate-class-entries */
44

5+
/**
6+
* @var int
7+
* @cvalue TOKEN_PARSE
8+
*/
9+
const TOKEN_PARSE = UNKNOWN;
10+
511
function token_get_all(string $code, int $flags = 0): array {}
612

713
function token_name(int $id): string {}

ext/tokenizer/tokenizer_arginfo.h

Lines changed: 6 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ext/tokenizer/tokenizer_data.c

Lines changed: 0 additions & 151 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)