Skip to content

Commit 2226ff0

Browse files
authored
Merge pull request #35 from staabm/PhpTokenTokenize
Utilize `PhpToken::tokenize()` - requires PHP8+
2 parents 3754561 + d2be497 commit 2226ff0

File tree

3 files changed

+12
-12
lines changed

3 files changed

+12
-12
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
# Keys:
1616
# - experimental: Whether the build is "allowed to fail".
1717
matrix:
18-
php: ['7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5']
18+
php: ['8.0', '8.1', '8.2', '8.3', '8.4', '8.5']
1919
experimental: [false]
2020

2121
include:

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"issues": "https://github.com/theseer/tokenizer/issues"
1414
},
1515
"require": {
16-
"php": "^7.2 || ^8.0",
16+
"php": "^8.0",
1717
"ext-xmlwriter": "*",
1818
"ext-dom": "*",
1919
"ext-tokenizer": "*"

src/Tokenizer.php

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,35 +46,35 @@ public function parse(string $source): TokenCollection {
4646
return $result;
4747
}
4848

49-
$tokens = \token_get_all($source);
49+
$tokens = \PhpToken::tokenize($source);
5050

5151
$lastToken = new Token(
52-
$tokens[0][2],
52+
$tokens[0]->line,
5353
'Placeholder',
5454
''
5555
);
5656

57-
foreach ($tokens as $pos => $tok) {
58-
if (\is_string($tok)) {
57+
foreach ($tokens as $tok) {
58+
if (isset(self::MAP[$tok->text])) {
5959
$token = new Token(
6060
$lastToken->getLine(),
61-
self::MAP[$tok],
62-
$tok
61+
self::MAP[$tok->text],
62+
$tok->text,
6363
);
6464
$result->addToken($token);
6565
$lastToken = $token;
6666

6767
continue;
6868
}
6969

70-
$line = $tok[2];
71-
$values = \preg_split('/\R+/Uu', $tok[1]);
70+
$line = $tok->line;
71+
$values = \preg_split('/\R+/Uu', $tok->text);
7272

7373
if (!$values) {
7474
$result->addToken(
7575
new Token(
7676
$line,
77-
\token_name($tok[0]),
77+
$tok->getTokenName(),
7878
'{binary data}'
7979
)
8080
);
@@ -85,7 +85,7 @@ public function parse(string $source): TokenCollection {
8585
foreach ($values as $v) {
8686
$token = new Token(
8787
$line,
88-
\token_name($tok[0]),
88+
$tok->getTokenName(),
8989
$v
9090
);
9191
$lastToken = $token;

0 commit comments

Comments
 (0)