PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 2.4.6
Booking for Appointments and Events Calendar – Amelia v2.4.6
2.4.7 2.4.6 2.4.5 2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / vendor / symfony / polyfill-php80 / PhpToken.php
ameliabooking / vendor / symfony / polyfill-php80 Last commit date
Resources 2 months ago LICENSE 2 months ago Php80.php 2 months ago PhpToken.php 2 months ago README.md 2 months ago bootstrap.php 2 months ago composer.json 2 months ago
PhpToken.php
107 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
12 namespace Symfony\Polyfill\Php80;
13
14 /**
15 * @author Fedonyuk Anton <info@ensostudio.ru>
16 *
17 * @internal
18 */
19 class PhpToken implements \Stringable
20 {
21 /**
22 * @var int
23 */
24 public $id;
25
26 /**
27 * @var string
28 */
29 public $text;
30
31 /**
32 * @var -1|positive-int
33 */
34 public $line;
35
36 /**
37 * @var int
38 */
39 public $pos;
40
41 /**
42 * @param -1|positive-int $line
43 */
44 public function __construct(int $id, string $text, int $line = -1, int $position = -1)
45 {
46 $this->id = $id;
47 $this->text = $text;
48 $this->line = $line;
49 $this->pos = $position;
50 }
51
52 public function getTokenName(): ?string
53 {
54 if ('UNKNOWN' === $name = token_name($this->id)) {
55 $name = \strlen($this->text) > 1 || \ord($this->text) < 32 ? null : $this->text;
56 }
57
58 return $name;
59 }
60
61 /**
62 * @param int|string|array $kind
63 */
64 public function is($kind): bool
65 {
66 foreach ((array) $kind as $value) {
67 if (\in_array($value, [$this->id, $this->text], true)) {
68 return true;
69 }
70 }
71
72 return false;
73 }
74
75 public function isIgnorable(): bool
76 {
77 return \in_array($this->id, [\T_WHITESPACE, \T_COMMENT, \T_DOC_COMMENT, \T_OPEN_TAG], true);
78 }
79
80 public function __toString(): string
81 {
82 return (string) $this->text;
83 }
84
85 /**
86 * @return list<static>
87 */
88 public static function tokenize(string $code, int $flags = 0): array
89 {
90 $line = 1;
91 $position = 0;
92 $tokens = token_get_all($code, $flags);
93 foreach ($tokens as $index => $token) {
94 if (\is_string($token)) {
95 $id = \ord($token);
96 $text = $token;
97 } else {
98 [$id, $text, $line] = $token;
99 }
100 $tokens[$index] = new static($id, $text, $line, $position);
101 $position += \strlen($text);
102 }
103
104 return $tokens;
105 }
106 }
107