PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.2.0
Independent Analytics – WordPress Analytics Plugin v2.2.0
2.15.5 2.15.4 2.15.3 2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / vendor / symfony / polyfill-php80 / PhpToken.php
independent-analytics / vendor / symfony / polyfill-php80 Last commit date
Resources 3 years ago Php80.php 3 years ago PhpToken.php 3 years ago bootstrap.php 3 years ago
PhpToken.php
91 lines
1 <?php
2
3 /*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11 namespace Symfony\Polyfill\Php80;
12
13 /**
14 * @author Fedonyuk Anton <info@ensostudio.ru>
15 *
16 * @internal
17 */
18 class PhpToken implements \Stringable
19 {
20 /**
21 * @var int
22 */
23 public $id;
24 /**
25 * @var string
26 */
27 public $text;
28 /**
29 * @var int
30 */
31 public $line;
32 /**
33 * @var int
34 */
35 public $pos;
36 public function __construct(int $id, string $text, int $line = -1, int $position = -1)
37 {
38 $this->id = $id;
39 $this->text = $text;
40 $this->line = $line;
41 $this->pos = $position;
42 }
43 public function getTokenName() : ?string
44 {
45 if ('UNKNOWN' === ($name = \token_name($this->id))) {
46 $name = \strlen($this->text) > 1 || \ord($this->text) < 32 ? null : $this->text;
47 }
48 return $name;
49 }
50 /**
51 * @param int|string|array $kind
52 */
53 public function is($kind) : bool
54 {
55 foreach ((array) $kind as $value) {
56 if (\in_array($value, [$this->id, $this->text], \true)) {
57 return \true;
58 }
59 }
60 return \false;
61 }
62 public function isIgnorable() : bool
63 {
64 return \in_array($this->id, [\T_WHITESPACE, \T_COMMENT, \T_DOC_COMMENT, \T_OPEN_TAG], \true);
65 }
66 public function __toString() : string
67 {
68 return (string) $this->text;
69 }
70 /**
71 * @return static[]
72 */
73 public static function tokenize(string $code, int $flags = 0) : array
74 {
75 $line = 1;
76 $position = 0;
77 $tokens = \token_get_all($code, $flags);
78 foreach ($tokens as $index => $token) {
79 if (\is_string($token)) {
80 $id = \ord($token);
81 $text = $token;
82 } else {
83 [$id, $text, $line] = $token;
84 }
85 $tokens[$index] = new static($id, $text, $line, $position);
86 $position += \strlen($text);
87 }
88 return $tokens;
89 }
90 }
91