Mercurial > hg > isophonics-drupal-site
comparison vendor/phpunit/php-token-stream/src/Token.php @ 14:1fec387a4317
Update Drupal core to 8.5.2 via Composer
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:46:53 +0100 |
parents | 4c8ae668cc8c |
children |
comparison
equal
deleted
inserted
replaced
13:5fb285c0d0e3 | 14:1fec387a4317 |
---|---|
1 <?php | 1 <?php |
2 /* | 2 /* |
3 * This file is part of the PHP_TokenStream package. | 3 * This file is part of php-token-stream. |
4 * | 4 * |
5 * (c) Sebastian Bergmann <sebastian@phpunit.de> | 5 * (c) Sebastian Bergmann <sebastian@phpunit.de> |
6 * | 6 * |
7 * For the full copyright and license information, please view the LICENSE | 7 * For the full copyright and license information, please view the LICENSE |
8 * file that was distributed with this source code. | 8 * file that was distributed with this source code. |
9 */ | 9 */ |
10 | 10 |
11 /** | 11 /** |
12 * A PHP token. | 12 * A PHP token. |
13 * | |
14 * @author Sebastian Bergmann <sebastian@phpunit.de> | |
15 * @copyright Sebastian Bergmann <sebastian@phpunit.de> | |
16 * @license http://www.opensource.org/licenses/BSD-3-Clause The BSD 3-Clause License | |
17 * @link http://github.com/sebastianbergmann/php-token-stream/tree | |
18 * @since Class available since Release 1.0.0 | |
19 */ | 13 */ |
20 abstract class PHP_Token | 14 abstract class PHP_Token |
21 { | 15 { |
22 /** | 16 /** |
23 * @var string | 17 * @var string |
24 */ | 18 */ |
25 protected $text; | 19 protected $text; |
26 | 20 |
27 /** | 21 /** |
28 * @var integer | 22 * @var int |
29 */ | 23 */ |
30 protected $line; | 24 protected $line; |
31 | 25 |
32 /** | 26 /** |
33 * @var PHP_Token_Stream | 27 * @var PHP_Token_Stream |
34 */ | 28 */ |
35 protected $tokenStream; | 29 protected $tokenStream; |
36 | 30 |
37 /** | 31 /** |
38 * @var integer | 32 * @var int |
39 */ | 33 */ |
40 protected $id; | 34 protected $id; |
41 | 35 |
42 /** | 36 /** |
43 * Constructor. | |
44 * | |
45 * @param string $text | 37 * @param string $text |
46 * @param integer $line | 38 * @param int $line |
47 * @param PHP_Token_Stream $tokenStream | 39 * @param PHP_Token_Stream $tokenStream |
48 * @param integer $id | 40 * @param int $id |
49 */ | 41 */ |
50 public function __construct($text, $line, PHP_Token_Stream $tokenStream, $id) | 42 public function __construct($text, $line, PHP_Token_Stream $tokenStream, $id) |
51 { | 43 { |
52 $this->text = $text; | 44 $this->text = $text; |
53 $this->line = $line; | 45 $this->line = $line; |
62 { | 54 { |
63 return $this->text; | 55 return $this->text; |
64 } | 56 } |
65 | 57 |
66 /** | 58 /** |
67 * @return integer | 59 * @return int |
68 */ | 60 */ |
69 public function getLine() | 61 public function getLine() |
70 { | 62 { |
71 return $this->line; | 63 return $this->line; |
72 } | 64 } |
65 | |
66 /** | |
67 * @return int | |
68 */ | |
69 public function getId() | |
70 { | |
71 return $this->id; | |
72 } | |
73 } | 73 } |
74 | 74 |
75 abstract class PHP_TokenWithScope extends PHP_Token | 75 abstract class PHP_TokenWithScope extends PHP_Token |
76 { | 76 { |
77 /** | 77 /** |
78 * @var integer | 78 * @var int |
79 */ | 79 */ |
80 protected $endTokenId; | 80 protected $endTokenId; |
81 | 81 |
82 /** | 82 /** |
83 * Get the docblock for this token | 83 * Get the docblock for this token |
118 if ($line < $currentLineNumber && | 118 if ($line < $currentLineNumber && |
119 !$tokens[$i] instanceof PHP_Token_DOC_COMMENT) { | 119 !$tokens[$i] instanceof PHP_Token_DOC_COMMENT) { |
120 break; | 120 break; |
121 } | 121 } |
122 | 122 |
123 return (string)$tokens[$i]; | 123 return (string) $tokens[$i]; |
124 } | 124 } |
125 } | 125 } |
126 | 126 |
127 /** | 127 /** |
128 * @return integer | 128 * @return int |
129 */ | 129 */ |
130 public function getEndTokenId() | 130 public function getEndTokenId() |
131 { | 131 { |
132 $block = 0; | 132 $block = 0; |
133 $i = $this->id; | 133 $i = $this->id; |
160 | 160 |
161 return $this->endTokenId; | 161 return $this->endTokenId; |
162 } | 162 } |
163 | 163 |
164 /** | 164 /** |
165 * @return integer | 165 * @return int |
166 */ | 166 */ |
167 public function getEndLine() | 167 public function getEndLine() |
168 { | 168 { |
169 return $this->tokenStream[$this->getEndTokenId()]->getLine(); | 169 return $this->tokenStream[$this->getEndTokenId()]->getLine(); |
170 } | 170 } |
201 /** | 201 /** |
202 * @return string | 202 * @return string |
203 */ | 203 */ |
204 public function getKeywords() | 204 public function getKeywords() |
205 { | 205 { |
206 $keywords = array(); | 206 $keywords = []; |
207 $tokens = $this->tokenStream->tokens(); | 207 $tokens = $this->tokenStream->tokens(); |
208 | 208 |
209 for ($i = $this->id - 2; $i > $this->id - 7; $i -= 2) { | 209 for ($i = $this->id - 2; $i > $this->id - 7; $i -= 2) { |
210 if (isset($tokens[$i]) && | 210 if (isset($tokens[$i]) && |
211 ($tokens[$i] instanceof PHP_Token_PRIVATE || | 211 ($tokens[$i] instanceof PHP_Token_PRIVATE || |
266 | 266 |
267 private function process() | 267 private function process() |
268 { | 268 { |
269 $tokens = $this->tokenStream->tokens(); | 269 $tokens = $this->tokenStream->tokens(); |
270 | 270 |
271 if ($tokens[$this->id+2] instanceof PHP_Token_CONSTANT_ENCAPSED_STRING) { | 271 if ($tokens[$this->id + 2] instanceof PHP_Token_CONSTANT_ENCAPSED_STRING) { |
272 $this->name = trim($tokens[$this->id+2], "'\""); | 272 $this->name = trim($tokens[$this->id + 2], "'\""); |
273 $this->type = strtolower( | 273 $this->type = strtolower( |
274 str_replace('PHP_Token_', '', get_class($tokens[$this->id])) | 274 str_replace('PHP_Token_', '', get_class($tokens[$this->id])) |
275 ); | 275 ); |
276 } | 276 } |
277 } | 277 } |
278 } | 278 } |
279 | 279 |
280 | |
281 class PHP_Token_FUNCTION extends PHP_TokenWithScopeAndVisibility | 280 class PHP_Token_FUNCTION extends PHP_TokenWithScopeAndVisibility |
282 { | 281 { |
283 /** | 282 /** |
284 * @var array | 283 * @var array |
285 */ | 284 */ |
286 protected $arguments; | 285 protected $arguments; |
287 | 286 |
288 /** | 287 /** |
289 * @var integer | 288 * @var int |
290 */ | 289 */ |
291 protected $ccn; | 290 protected $ccn; |
292 | 291 |
293 /** | 292 /** |
294 * @var string | 293 * @var string |
297 | 296 |
298 /** | 297 /** |
299 * @var string | 298 * @var string |
300 */ | 299 */ |
301 protected $signature; | 300 protected $signature; |
301 | |
302 /** | |
303 * @var bool | |
304 */ | |
305 private $anonymous = false; | |
302 | 306 |
303 /** | 307 /** |
304 * @return array | 308 * @return array |
305 */ | 309 */ |
306 public function getArguments() | 310 public function getArguments() |
307 { | 311 { |
308 if ($this->arguments !== null) { | 312 if ($this->arguments !== null) { |
309 return $this->arguments; | 313 return $this->arguments; |
310 } | 314 } |
311 | 315 |
312 $this->arguments = array(); | 316 $this->arguments = []; |
313 $tokens = $this->tokenStream->tokens(); | 317 $tokens = $this->tokenStream->tokens(); |
314 $typeDeclaration = null; | 318 $typeDeclaration = null; |
315 | 319 |
316 // Search for first token inside brackets | 320 // Search for first token inside brackets |
317 $i = $this->id + 2; | 321 $i = $this->id + 2; |
318 | 322 |
319 while (!$tokens[$i-1] instanceof PHP_Token_OPEN_BRACKET) { | 323 while (!$tokens[$i - 1] instanceof PHP_Token_OPEN_BRACKET) { |
320 $i++; | 324 $i++; |
321 } | 325 } |
322 | 326 |
323 while (!$tokens[$i] instanceof PHP_Token_CLOSE_BRACKET) { | 327 while (!$tokens[$i] instanceof PHP_Token_CLOSE_BRACKET) { |
324 if ($tokens[$i] instanceof PHP_Token_STRING) { | 328 if ($tokens[$i] instanceof PHP_Token_STRING) { |
325 $typeDeclaration = (string)$tokens[$i]; | 329 $typeDeclaration = (string) $tokens[$i]; |
326 } elseif ($tokens[$i] instanceof PHP_Token_VARIABLE) { | 330 } elseif ($tokens[$i] instanceof PHP_Token_VARIABLE) { |
327 $this->arguments[(string)$tokens[$i]] = $typeDeclaration; | 331 $this->arguments[(string) $tokens[$i]] = $typeDeclaration; |
328 $typeDeclaration = null; | 332 $typeDeclaration = null; |
329 } | 333 } |
330 | 334 |
331 $i++; | 335 $i++; |
332 } | 336 } |
333 | 337 |
343 return $this->name; | 347 return $this->name; |
344 } | 348 } |
345 | 349 |
346 $tokens = $this->tokenStream->tokens(); | 350 $tokens = $this->tokenStream->tokens(); |
347 | 351 |
348 for ($i = $this->id + 1; $i < count($tokens); $i++) { | 352 $i = $this->id + 1; |
349 if ($tokens[$i] instanceof PHP_Token_STRING) { | 353 |
350 $this->name = (string)$tokens[$i]; | 354 if ($tokens[$i] instanceof PHP_Token_WHITESPACE) { |
351 break; | 355 $i++; |
352 } elseif ($tokens[$i] instanceof PHP_Token_AMPERSAND && | 356 } |
353 $tokens[$i+1] instanceof PHP_Token_STRING) { | 357 |
354 $this->name = (string)$tokens[$i+1]; | 358 if ($tokens[$i] instanceof PHP_Token_AMPERSAND) { |
355 break; | 359 $i++; |
356 } elseif ($tokens[$i] instanceof PHP_Token_OPEN_BRACKET) { | 360 } |
357 $this->name = 'anonymous function'; | 361 |
358 break; | 362 if ($tokens[$i + 1] instanceof PHP_Token_OPEN_BRACKET) { |
359 } | 363 $this->name = (string) $tokens[$i]; |
360 } | 364 } elseif ($tokens[$i + 1] instanceof PHP_Token_WHITESPACE && $tokens[$i + 2] instanceof PHP_Token_OPEN_BRACKET) { |
361 | 365 $this->name = (string) $tokens[$i]; |
362 if ($this->name != 'anonymous function') { | 366 } else { |
367 $this->anonymous = true; | |
368 | |
369 $this->name = sprintf( | |
370 'anonymousFunction:%s#%s', | |
371 $this->getLine(), | |
372 $this->getId() | |
373 ); | |
374 } | |
375 | |
376 if (!$this->isAnonymous()) { | |
363 for ($i = $this->id; $i; --$i) { | 377 for ($i = $this->id; $i; --$i) { |
364 if ($tokens[$i] instanceof PHP_Token_NAMESPACE) { | 378 if ($tokens[$i] instanceof PHP_Token_NAMESPACE) { |
365 $this->name = $tokens[$i]->getName() . '\\' . $this->name; | 379 $this->name = $tokens[$i]->getName() . '\\' . $this->name; |
380 | |
366 break; | 381 break; |
367 } | 382 } |
368 | 383 |
369 if ($tokens[$i] instanceof PHP_Token_INTERFACE) { | 384 if ($tokens[$i] instanceof PHP_Token_INTERFACE) { |
370 break; | 385 break; |
374 | 389 |
375 return $this->name; | 390 return $this->name; |
376 } | 391 } |
377 | 392 |
378 /** | 393 /** |
379 * @return integer | 394 * @return int |
380 */ | 395 */ |
381 public function getCCN() | 396 public function getCCN() |
382 { | 397 { |
383 if ($this->ccn !== null) { | 398 if ($this->ccn !== null) { |
384 return $this->ccn; | 399 return $this->ccn; |
417 { | 432 { |
418 if ($this->signature !== null) { | 433 if ($this->signature !== null) { |
419 return $this->signature; | 434 return $this->signature; |
420 } | 435 } |
421 | 436 |
422 if ($this->getName() == 'anonymous function') { | 437 if ($this->isAnonymous()) { |
423 $this->signature = 'anonymous function'; | 438 $this->signature = 'anonymousFunction'; |
424 $i = $this->id + 1; | 439 $i = $this->id + 1; |
425 } else { | 440 } else { |
426 $this->signature = ''; | 441 $this->signature = ''; |
427 $i = $this->id + 2; | 442 $i = $this->id + 2; |
428 } | 443 } |
437 | 452 |
438 $this->signature = trim($this->signature); | 453 $this->signature = trim($this->signature); |
439 | 454 |
440 return $this->signature; | 455 return $this->signature; |
441 } | 456 } |
457 | |
458 /** | |
459 * @return bool | |
460 */ | |
461 public function isAnonymous() | |
462 { | |
463 return $this->anonymous; | |
464 } | |
442 } | 465 } |
443 | 466 |
444 class PHP_Token_INTERFACE extends PHP_TokenWithScopeAndVisibility | 467 class PHP_Token_INTERFACE extends PHP_TokenWithScopeAndVisibility |
445 { | 468 { |
446 /** | 469 /** |
451 /** | 474 /** |
452 * @return string | 475 * @return string |
453 */ | 476 */ |
454 public function getName() | 477 public function getName() |
455 { | 478 { |
456 return (string)$this->tokenStream[$this->id + 2]; | 479 return (string) $this->tokenStream[$this->id + 2]; |
457 } | 480 } |
458 | 481 |
459 /** | 482 /** |
460 * @return boolean | 483 * @return bool |
461 */ | 484 */ |
462 public function hasParent() | 485 public function hasParent() |
463 { | 486 { |
464 return $this->tokenStream[$this->id + 4] instanceof PHP_Token_EXTENDS; | 487 return $this->tokenStream[$this->id + 4] instanceof PHP_Token_EXTENDS; |
465 } | 488 } |
470 public function getPackage() | 493 public function getPackage() |
471 { | 494 { |
472 $className = $this->getName(); | 495 $className = $this->getName(); |
473 $docComment = $this->getDocblock(); | 496 $docComment = $this->getDocblock(); |
474 | 497 |
475 $result = array( | 498 $result = [ |
476 'namespace' => '', | 499 'namespace' => '', |
477 'fullPackage' => '', | 500 'fullPackage' => '', |
478 'category' => '', | 501 'category' => '', |
479 'package' => '', | 502 'package' => '', |
480 'subpackage' => '' | 503 'subpackage' => '' |
481 ); | 504 ]; |
482 | 505 |
483 for ($i = $this->id; $i; --$i) { | 506 for ($i = $this->id; $i; --$i) { |
484 if ($this->tokenStream[$i] instanceof PHP_Token_NAMESPACE) { | 507 if ($this->tokenStream[$i] instanceof PHP_Token_NAMESPACE) { |
485 $result['namespace'] = $this->tokenStream[$i]->getName(); | 508 $result['namespace'] = $this->tokenStream[$i]->getName(); |
486 break; | 509 break; |
510 | 533 |
511 return $result; | 534 return $result; |
512 } | 535 } |
513 | 536 |
514 /** | 537 /** |
515 * @param array $parts | 538 * @param array $parts |
516 * @param string $join | 539 * @param string $join |
540 * | |
517 * @return string | 541 * @return string |
518 */ | 542 */ |
519 protected function arrayToName(array $parts, $join = '\\') | 543 protected function arrayToName(array $parts, $join = '\\') |
520 { | 544 { |
521 $result = ''; | 545 $result = ''; |
522 | 546 |
523 if (count($parts) > 1) { | 547 if (count($parts) > 1) { |
524 array_pop($parts); | 548 array_pop($parts); |
525 | 549 |
526 $result = join($join, $parts); | 550 $result = implode($join, $parts); |
527 } | 551 } |
528 | 552 |
529 return $result; | 553 return $result; |
530 } | 554 } |
531 | 555 |
532 /** | 556 /** |
533 * @return boolean|string | 557 * @return bool|string |
534 */ | 558 */ |
535 public function getParent() | 559 public function getParent() |
536 { | 560 { |
537 if (!$this->hasParent()) { | 561 if (!$this->hasParent()) { |
538 return false; | 562 return false; |
539 } | 563 } |
540 | 564 |
541 $i = $this->id + 6; | 565 $i = $this->id + 6; |
542 $tokens = $this->tokenStream->tokens(); | 566 $tokens = $this->tokenStream->tokens(); |
543 $className = (string)$tokens[$i]; | 567 $className = (string) $tokens[$i]; |
544 | 568 |
545 while (isset($tokens[$i+1]) && | 569 while (isset($tokens[$i + 1]) && |
546 !$tokens[$i+1] instanceof PHP_Token_WHITESPACE) { | 570 !$tokens[$i + 1] instanceof PHP_Token_WHITESPACE) { |
547 $className .= (string)$tokens[++$i]; | 571 $className .= (string) $tokens[++$i]; |
548 } | 572 } |
549 | 573 |
550 return $className; | 574 return $className; |
551 } | 575 } |
552 | 576 |
553 /** | 577 /** |
554 * @return boolean | 578 * @return bool |
555 */ | 579 */ |
556 public function hasInterfaces() | 580 public function hasInterfaces() |
557 { | 581 { |
558 return (isset($this->tokenStream[$this->id + 4]) && | 582 return (isset($this->tokenStream[$this->id + 4]) && |
559 $this->tokenStream[$this->id + 4] instanceof PHP_Token_IMPLEMENTS) || | 583 $this->tokenStream[$this->id + 4] instanceof PHP_Token_IMPLEMENTS) || |
560 (isset($this->tokenStream[$this->id + 8]) && | 584 (isset($this->tokenStream[$this->id + 8]) && |
561 $this->tokenStream[$this->id + 8] instanceof PHP_Token_IMPLEMENTS); | 585 $this->tokenStream[$this->id + 8] instanceof PHP_Token_IMPLEMENTS); |
562 } | 586 } |
563 | 587 |
564 /** | 588 /** |
565 * @return array|boolean | 589 * @return array|bool |
566 */ | 590 */ |
567 public function getInterfaces() | 591 public function getInterfaces() |
568 { | 592 { |
569 if ($this->interfaces !== null) { | 593 if ($this->interfaces !== null) { |
570 return $this->interfaces; | 594 return $this->interfaces; |
580 $i = $this->id + 7; | 604 $i = $this->id + 7; |
581 } | 605 } |
582 | 606 |
583 $tokens = $this->tokenStream->tokens(); | 607 $tokens = $this->tokenStream->tokens(); |
584 | 608 |
585 while (!$tokens[$i+1] instanceof PHP_Token_OPEN_CURLY) { | 609 while (!$tokens[$i + 1] instanceof PHP_Token_OPEN_CURLY) { |
586 $i++; | 610 $i++; |
587 | 611 |
588 if ($tokens[$i] instanceof PHP_Token_STRING) { | 612 if ($tokens[$i] instanceof PHP_Token_STRING) { |
589 $this->interfaces[] = (string)$tokens[$i]; | 613 $this->interfaces[] = (string) $tokens[$i]; |
590 } | 614 } |
591 } | 615 } |
592 | 616 |
593 return $this->interfaces; | 617 return $this->interfaces; |
594 } | 618 } |
595 } | 619 } |
596 | 620 |
597 class PHP_Token_ABSTRACT extends PHP_Token {} | 621 class PHP_Token_ABSTRACT extends PHP_Token |
598 class PHP_Token_AMPERSAND extends PHP_Token {} | 622 { |
599 class PHP_Token_AND_EQUAL extends PHP_Token {} | 623 } |
600 class PHP_Token_ARRAY extends PHP_Token {} | 624 |
601 class PHP_Token_ARRAY_CAST extends PHP_Token {} | 625 class PHP_Token_AMPERSAND extends PHP_Token |
602 class PHP_Token_AS extends PHP_Token {} | 626 { |
603 class PHP_Token_AT extends PHP_Token {} | 627 } |
604 class PHP_Token_BACKTICK extends PHP_Token {} | 628 |
605 class PHP_Token_BAD_CHARACTER extends PHP_Token {} | 629 class PHP_Token_AND_EQUAL extends PHP_Token |
606 class PHP_Token_BOOLEAN_AND extends PHP_Token {} | 630 { |
607 class PHP_Token_BOOLEAN_OR extends PHP_Token {} | 631 } |
608 class PHP_Token_BOOL_CAST extends PHP_Token {} | 632 |
609 class PHP_Token_BREAK extends PHP_Token {} | 633 class PHP_Token_ARRAY extends PHP_Token |
610 class PHP_Token_CARET extends PHP_Token {} | 634 { |
611 class PHP_Token_CASE extends PHP_Token {} | 635 } |
612 class PHP_Token_CATCH extends PHP_Token {} | 636 |
613 class PHP_Token_CHARACTER extends PHP_Token {} | 637 class PHP_Token_ARRAY_CAST extends PHP_Token |
638 { | |
639 } | |
640 | |
641 class PHP_Token_AS extends PHP_Token | |
642 { | |
643 } | |
644 | |
645 class PHP_Token_AT extends PHP_Token | |
646 { | |
647 } | |
648 | |
649 class PHP_Token_BACKTICK extends PHP_Token | |
650 { | |
651 } | |
652 | |
653 class PHP_Token_BAD_CHARACTER extends PHP_Token | |
654 { | |
655 } | |
656 | |
657 class PHP_Token_BOOLEAN_AND extends PHP_Token | |
658 { | |
659 } | |
660 | |
661 class PHP_Token_BOOLEAN_OR extends PHP_Token | |
662 { | |
663 } | |
664 | |
665 class PHP_Token_BOOL_CAST extends PHP_Token | |
666 { | |
667 } | |
668 | |
669 class PHP_Token_BREAK extends PHP_Token | |
670 { | |
671 } | |
672 | |
673 class PHP_Token_CARET extends PHP_Token | |
674 { | |
675 } | |
676 | |
677 class PHP_Token_CASE extends PHP_Token | |
678 { | |
679 } | |
680 | |
681 class PHP_Token_CATCH extends PHP_Token | |
682 { | |
683 } | |
684 | |
685 class PHP_Token_CHARACTER extends PHP_Token | |
686 { | |
687 } | |
614 | 688 |
615 class PHP_Token_CLASS extends PHP_Token_INTERFACE | 689 class PHP_Token_CLASS extends PHP_Token_INTERFACE |
616 { | 690 { |
617 /** | 691 /** |
692 * @var bool | |
693 */ | |
694 private $anonymous = false; | |
695 | |
696 /** | |
697 * @var string | |
698 */ | |
699 private $name; | |
700 | |
701 /** | |
618 * @return string | 702 * @return string |
619 */ | 703 */ |
620 public function getName() | 704 public function getName() |
621 { | 705 { |
706 if ($this->name !== null) { | |
707 return $this->name; | |
708 } | |
709 | |
622 $next = $this->tokenStream[$this->id + 1]; | 710 $next = $this->tokenStream[$this->id + 1]; |
623 | 711 |
624 if ($next instanceof PHP_Token_WHITESPACE) { | 712 if ($next instanceof PHP_Token_WHITESPACE) { |
625 $next = $this->tokenStream[$this->id + 2]; | 713 $next = $this->tokenStream[$this->id + 2]; |
626 } | 714 } |
627 | 715 |
628 if ($next instanceof PHP_Token_STRING) { | 716 if ($next instanceof PHP_Token_STRING) { |
629 return (string) $next; | 717 $this->name =(string) $next; |
718 | |
719 return $this->name; | |
630 } | 720 } |
631 | 721 |
632 if ($next instanceof PHP_Token_OPEN_CURLY || | 722 if ($next instanceof PHP_Token_OPEN_CURLY || |
633 $next instanceof PHP_Token_EXTENDS || | 723 $next instanceof PHP_Token_EXTENDS || |
634 $next instanceof PHP_Token_IMPLEMENTS) { | 724 $next instanceof PHP_Token_IMPLEMENTS) { |
635 return 'anonymous class'; | 725 |
636 } | 726 $this->name = sprintf( |
637 } | 727 'AnonymousClass:%s#%s', |
638 } | 728 $this->getLine(), |
639 | 729 $this->getId() |
640 class PHP_Token_CLASS_C extends PHP_Token {} | 730 ); |
641 class PHP_Token_CLASS_NAME_CONSTANT extends PHP_Token {} | 731 |
642 class PHP_Token_CLONE extends PHP_Token {} | 732 $this->anonymous = true; |
643 class PHP_Token_CLOSE_BRACKET extends PHP_Token {} | 733 |
644 class PHP_Token_CLOSE_CURLY extends PHP_Token {} | 734 return $this->name; |
645 class PHP_Token_CLOSE_SQUARE extends PHP_Token {} | 735 } |
646 class PHP_Token_CLOSE_TAG extends PHP_Token {} | 736 } |
647 class PHP_Token_COLON extends PHP_Token {} | 737 |
648 class PHP_Token_COMMA extends PHP_Token {} | 738 public function isAnonymous() |
649 class PHP_Token_COMMENT extends PHP_Token {} | 739 { |
650 class PHP_Token_CONCAT_EQUAL extends PHP_Token {} | 740 return $this->anonymous; |
651 class PHP_Token_CONST extends PHP_Token {} | 741 } |
652 class PHP_Token_CONSTANT_ENCAPSED_STRING extends PHP_Token {} | 742 } |
653 class PHP_Token_CONTINUE extends PHP_Token {} | 743 |
654 class PHP_Token_CURLY_OPEN extends PHP_Token {} | 744 class PHP_Token_CLASS_C extends PHP_Token |
655 class PHP_Token_DEC extends PHP_Token {} | 745 { |
656 class PHP_Token_DECLARE extends PHP_Token {} | 746 } |
657 class PHP_Token_DEFAULT extends PHP_Token {} | 747 |
658 class PHP_Token_DIV extends PHP_Token {} | 748 class PHP_Token_CLASS_NAME_CONSTANT extends PHP_Token |
659 class PHP_Token_DIV_EQUAL extends PHP_Token {} | 749 { |
660 class PHP_Token_DNUMBER extends PHP_Token {} | 750 } |
661 class PHP_Token_DO extends PHP_Token {} | 751 |
662 class PHP_Token_DOC_COMMENT extends PHP_Token {} | 752 class PHP_Token_CLONE extends PHP_Token |
663 class PHP_Token_DOLLAR extends PHP_Token {} | 753 { |
664 class PHP_Token_DOLLAR_OPEN_CURLY_BRACES extends PHP_Token {} | 754 } |
665 class PHP_Token_DOT extends PHP_Token {} | 755 |
666 class PHP_Token_DOUBLE_ARROW extends PHP_Token {} | 756 class PHP_Token_CLOSE_BRACKET extends PHP_Token |
667 class PHP_Token_DOUBLE_CAST extends PHP_Token {} | 757 { |
668 class PHP_Token_DOUBLE_COLON extends PHP_Token {} | 758 } |
669 class PHP_Token_DOUBLE_QUOTES extends PHP_Token {} | 759 |
670 class PHP_Token_ECHO extends PHP_Token {} | 760 class PHP_Token_CLOSE_CURLY extends PHP_Token |
671 class PHP_Token_ELSE extends PHP_Token {} | 761 { |
672 class PHP_Token_ELSEIF extends PHP_Token {} | 762 } |
673 class PHP_Token_EMPTY extends PHP_Token {} | 763 |
674 class PHP_Token_ENCAPSED_AND_WHITESPACE extends PHP_Token {} | 764 class PHP_Token_CLOSE_SQUARE extends PHP_Token |
675 class PHP_Token_ENDDECLARE extends PHP_Token {} | 765 { |
676 class PHP_Token_ENDFOR extends PHP_Token {} | 766 } |
677 class PHP_Token_ENDFOREACH extends PHP_Token {} | 767 |
678 class PHP_Token_ENDIF extends PHP_Token {} | 768 class PHP_Token_CLOSE_TAG extends PHP_Token |
679 class PHP_Token_ENDSWITCH extends PHP_Token {} | 769 { |
680 class PHP_Token_ENDWHILE extends PHP_Token {} | 770 } |
681 class PHP_Token_END_HEREDOC extends PHP_Token {} | 771 |
682 class PHP_Token_EQUAL extends PHP_Token {} | 772 class PHP_Token_COLON extends PHP_Token |
683 class PHP_Token_EVAL extends PHP_Token {} | 773 { |
684 class PHP_Token_EXCLAMATION_MARK extends PHP_Token {} | 774 } |
685 class PHP_Token_EXIT extends PHP_Token {} | 775 |
686 class PHP_Token_EXTENDS extends PHP_Token {} | 776 class PHP_Token_COMMA extends PHP_Token |
687 class PHP_Token_FILE extends PHP_Token {} | 777 { |
688 class PHP_Token_FINAL extends PHP_Token {} | 778 } |
689 class PHP_Token_FOR extends PHP_Token {} | 779 |
690 class PHP_Token_FOREACH extends PHP_Token {} | 780 class PHP_Token_COMMENT extends PHP_Token |
691 class PHP_Token_FUNC_C extends PHP_Token {} | 781 { |
692 class PHP_Token_GLOBAL extends PHP_Token {} | 782 } |
693 class PHP_Token_GT extends PHP_Token {} | 783 |
694 class PHP_Token_IF extends PHP_Token {} | 784 class PHP_Token_CONCAT_EQUAL extends PHP_Token |
695 class PHP_Token_IMPLEMENTS extends PHP_Token {} | 785 { |
696 class PHP_Token_INC extends PHP_Token {} | 786 } |
697 class PHP_Token_INCLUDE extends PHP_Token_Includes {} | 787 |
698 class PHP_Token_INCLUDE_ONCE extends PHP_Token_Includes {} | 788 class PHP_Token_CONST extends PHP_Token |
699 class PHP_Token_INLINE_HTML extends PHP_Token {} | 789 { |
700 class PHP_Token_INSTANCEOF extends PHP_Token {} | 790 } |
701 class PHP_Token_INT_CAST extends PHP_Token {} | 791 |
702 class PHP_Token_ISSET extends PHP_Token {} | 792 class PHP_Token_CONSTANT_ENCAPSED_STRING extends PHP_Token |
703 class PHP_Token_IS_EQUAL extends PHP_Token {} | 793 { |
704 class PHP_Token_IS_GREATER_OR_EQUAL extends PHP_Token {} | 794 } |
705 class PHP_Token_IS_IDENTICAL extends PHP_Token {} | 795 |
706 class PHP_Token_IS_NOT_EQUAL extends PHP_Token {} | 796 class PHP_Token_CONTINUE extends PHP_Token |
707 class PHP_Token_IS_NOT_IDENTICAL extends PHP_Token {} | 797 { |
708 class PHP_Token_IS_SMALLER_OR_EQUAL extends PHP_Token {} | 798 } |
709 class PHP_Token_LINE extends PHP_Token {} | 799 |
710 class PHP_Token_LIST extends PHP_Token {} | 800 class PHP_Token_CURLY_OPEN extends PHP_Token |
711 class PHP_Token_LNUMBER extends PHP_Token {} | 801 { |
712 class PHP_Token_LOGICAL_AND extends PHP_Token {} | 802 } |
713 class PHP_Token_LOGICAL_OR extends PHP_Token {} | 803 |
714 class PHP_Token_LOGICAL_XOR extends PHP_Token {} | 804 class PHP_Token_DEC extends PHP_Token |
715 class PHP_Token_LT extends PHP_Token {} | 805 { |
716 class PHP_Token_METHOD_C extends PHP_Token {} | 806 } |
717 class PHP_Token_MINUS extends PHP_Token {} | 807 |
718 class PHP_Token_MINUS_EQUAL extends PHP_Token {} | 808 class PHP_Token_DECLARE extends PHP_Token |
719 class PHP_Token_MOD_EQUAL extends PHP_Token {} | 809 { |
720 class PHP_Token_MULT extends PHP_Token {} | 810 } |
721 class PHP_Token_MUL_EQUAL extends PHP_Token {} | 811 |
722 class PHP_Token_NEW extends PHP_Token {} | 812 class PHP_Token_DEFAULT extends PHP_Token |
723 class PHP_Token_NUM_STRING extends PHP_Token {} | 813 { |
724 class PHP_Token_OBJECT_CAST extends PHP_Token {} | 814 } |
725 class PHP_Token_OBJECT_OPERATOR extends PHP_Token {} | 815 |
726 class PHP_Token_OPEN_BRACKET extends PHP_Token {} | 816 class PHP_Token_DIV extends PHP_Token |
727 class PHP_Token_OPEN_CURLY extends PHP_Token {} | 817 { |
728 class PHP_Token_OPEN_SQUARE extends PHP_Token {} | 818 } |
729 class PHP_Token_OPEN_TAG extends PHP_Token {} | 819 |
730 class PHP_Token_OPEN_TAG_WITH_ECHO extends PHP_Token {} | 820 class PHP_Token_DIV_EQUAL extends PHP_Token |
731 class PHP_Token_OR_EQUAL extends PHP_Token {} | 821 { |
732 class PHP_Token_PAAMAYIM_NEKUDOTAYIM extends PHP_Token {} | 822 } |
733 class PHP_Token_PERCENT extends PHP_Token {} | 823 |
734 class PHP_Token_PIPE extends PHP_Token {} | 824 class PHP_Token_DNUMBER extends PHP_Token |
735 class PHP_Token_PLUS extends PHP_Token {} | 825 { |
736 class PHP_Token_PLUS_EQUAL extends PHP_Token {} | 826 } |
737 class PHP_Token_PRINT extends PHP_Token {} | 827 |
738 class PHP_Token_PRIVATE extends PHP_Token {} | 828 class PHP_Token_DO extends PHP_Token |
739 class PHP_Token_PROTECTED extends PHP_Token {} | 829 { |
740 class PHP_Token_PUBLIC extends PHP_Token {} | 830 } |
741 class PHP_Token_QUESTION_MARK extends PHP_Token {} | 831 |
742 class PHP_Token_REQUIRE extends PHP_Token_Includes {} | 832 class PHP_Token_DOC_COMMENT extends PHP_Token |
743 class PHP_Token_REQUIRE_ONCE extends PHP_Token_Includes {} | 833 { |
744 class PHP_Token_RETURN extends PHP_Token {} | 834 } |
745 class PHP_Token_SEMICOLON extends PHP_Token {} | 835 |
746 class PHP_Token_SL extends PHP_Token {} | 836 class PHP_Token_DOLLAR extends PHP_Token |
747 class PHP_Token_SL_EQUAL extends PHP_Token {} | 837 { |
748 class PHP_Token_SR extends PHP_Token {} | 838 } |
749 class PHP_Token_SR_EQUAL extends PHP_Token {} | 839 |
750 class PHP_Token_START_HEREDOC extends PHP_Token {} | 840 class PHP_Token_DOLLAR_OPEN_CURLY_BRACES extends PHP_Token |
751 class PHP_Token_STATIC extends PHP_Token {} | 841 { |
752 class PHP_Token_STRING extends PHP_Token {} | 842 } |
753 class PHP_Token_STRING_CAST extends PHP_Token {} | 843 |
754 class PHP_Token_STRING_VARNAME extends PHP_Token {} | 844 class PHP_Token_DOT extends PHP_Token |
755 class PHP_Token_SWITCH extends PHP_Token {} | 845 { |
756 class PHP_Token_THROW extends PHP_Token {} | 846 } |
757 class PHP_Token_TILDE extends PHP_Token {} | 847 |
758 class PHP_Token_TRY extends PHP_Token {} | 848 class PHP_Token_DOUBLE_ARROW extends PHP_Token |
759 class PHP_Token_UNSET extends PHP_Token {} | 849 { |
760 class PHP_Token_UNSET_CAST extends PHP_Token {} | 850 } |
761 class PHP_Token_USE extends PHP_Token {} | 851 |
762 class PHP_Token_USE_FUNCTION extends PHP_Token {} | 852 class PHP_Token_DOUBLE_CAST extends PHP_Token |
763 class PHP_Token_VAR extends PHP_Token {} | 853 { |
764 class PHP_Token_VARIABLE extends PHP_Token {} | 854 } |
765 class PHP_Token_WHILE extends PHP_Token {} | 855 |
766 class PHP_Token_WHITESPACE extends PHP_Token {} | 856 class PHP_Token_DOUBLE_COLON extends PHP_Token |
767 class PHP_Token_XOR_EQUAL extends PHP_Token {} | 857 { |
858 } | |
859 | |
860 class PHP_Token_DOUBLE_QUOTES extends PHP_Token | |
861 { | |
862 } | |
863 | |
864 class PHP_Token_ECHO extends PHP_Token | |
865 { | |
866 } | |
867 | |
868 class PHP_Token_ELSE extends PHP_Token | |
869 { | |
870 } | |
871 | |
872 class PHP_Token_ELSEIF extends PHP_Token | |
873 { | |
874 } | |
875 | |
876 class PHP_Token_EMPTY extends PHP_Token | |
877 { | |
878 } | |
879 | |
880 class PHP_Token_ENCAPSED_AND_WHITESPACE extends PHP_Token | |
881 { | |
882 } | |
883 | |
884 class PHP_Token_ENDDECLARE extends PHP_Token | |
885 { | |
886 } | |
887 | |
888 class PHP_Token_ENDFOR extends PHP_Token | |
889 { | |
890 } | |
891 | |
892 class PHP_Token_ENDFOREACH extends PHP_Token | |
893 { | |
894 } | |
895 | |
896 class PHP_Token_ENDIF extends PHP_Token | |
897 { | |
898 } | |
899 | |
900 class PHP_Token_ENDSWITCH extends PHP_Token | |
901 { | |
902 } | |
903 | |
904 class PHP_Token_ENDWHILE extends PHP_Token | |
905 { | |
906 } | |
907 | |
908 class PHP_Token_END_HEREDOC extends PHP_Token | |
909 { | |
910 } | |
911 | |
912 class PHP_Token_EQUAL extends PHP_Token | |
913 { | |
914 } | |
915 | |
916 class PHP_Token_EVAL extends PHP_Token | |
917 { | |
918 } | |
919 | |
920 class PHP_Token_EXCLAMATION_MARK extends PHP_Token | |
921 { | |
922 } | |
923 | |
924 class PHP_Token_EXIT extends PHP_Token | |
925 { | |
926 } | |
927 | |
928 class PHP_Token_EXTENDS extends PHP_Token | |
929 { | |
930 } | |
931 | |
932 class PHP_Token_FILE extends PHP_Token | |
933 { | |
934 } | |
935 | |
936 class PHP_Token_FINAL extends PHP_Token | |
937 { | |
938 } | |
939 | |
940 class PHP_Token_FOR extends PHP_Token | |
941 { | |
942 } | |
943 | |
944 class PHP_Token_FOREACH extends PHP_Token | |
945 { | |
946 } | |
947 | |
948 class PHP_Token_FUNC_C extends PHP_Token | |
949 { | |
950 } | |
951 | |
952 class PHP_Token_GLOBAL extends PHP_Token | |
953 { | |
954 } | |
955 | |
956 class PHP_Token_GT extends PHP_Token | |
957 { | |
958 } | |
959 | |
960 class PHP_Token_IF extends PHP_Token | |
961 { | |
962 } | |
963 | |
964 class PHP_Token_IMPLEMENTS extends PHP_Token | |
965 { | |
966 } | |
967 | |
968 class PHP_Token_INC extends PHP_Token | |
969 { | |
970 } | |
971 | |
972 class PHP_Token_INCLUDE extends PHP_Token_Includes | |
973 { | |
974 } | |
975 | |
976 class PHP_Token_INCLUDE_ONCE extends PHP_Token_Includes | |
977 { | |
978 } | |
979 | |
980 class PHP_Token_INLINE_HTML extends PHP_Token | |
981 { | |
982 } | |
983 | |
984 class PHP_Token_INSTANCEOF extends PHP_Token | |
985 { | |
986 } | |
987 | |
988 class PHP_Token_INT_CAST extends PHP_Token | |
989 { | |
990 } | |
991 | |
992 class PHP_Token_ISSET extends PHP_Token | |
993 { | |
994 } | |
995 | |
996 class PHP_Token_IS_EQUAL extends PHP_Token | |
997 { | |
998 } | |
999 | |
1000 class PHP_Token_IS_GREATER_OR_EQUAL extends PHP_Token | |
1001 { | |
1002 } | |
1003 | |
1004 class PHP_Token_IS_IDENTICAL extends PHP_Token | |
1005 { | |
1006 } | |
1007 | |
1008 class PHP_Token_IS_NOT_EQUAL extends PHP_Token | |
1009 { | |
1010 } | |
1011 | |
1012 class PHP_Token_IS_NOT_IDENTICAL extends PHP_Token | |
1013 { | |
1014 } | |
1015 | |
1016 class PHP_Token_IS_SMALLER_OR_EQUAL extends PHP_Token | |
1017 { | |
1018 } | |
1019 | |
1020 class PHP_Token_LINE extends PHP_Token | |
1021 { | |
1022 } | |
1023 | |
1024 class PHP_Token_LIST extends PHP_Token | |
1025 { | |
1026 } | |
1027 | |
1028 class PHP_Token_LNUMBER extends PHP_Token | |
1029 { | |
1030 } | |
1031 | |
1032 class PHP_Token_LOGICAL_AND extends PHP_Token | |
1033 { | |
1034 } | |
1035 | |
1036 class PHP_Token_LOGICAL_OR extends PHP_Token | |
1037 { | |
1038 } | |
1039 | |
1040 class PHP_Token_LOGICAL_XOR extends PHP_Token | |
1041 { | |
1042 } | |
1043 | |
1044 class PHP_Token_LT extends PHP_Token | |
1045 { | |
1046 } | |
1047 | |
1048 class PHP_Token_METHOD_C extends PHP_Token | |
1049 { | |
1050 } | |
1051 | |
1052 class PHP_Token_MINUS extends PHP_Token | |
1053 { | |
1054 } | |
1055 | |
1056 class PHP_Token_MINUS_EQUAL extends PHP_Token | |
1057 { | |
1058 } | |
1059 | |
1060 class PHP_Token_MOD_EQUAL extends PHP_Token | |
1061 { | |
1062 } | |
1063 | |
1064 class PHP_Token_MULT extends PHP_Token | |
1065 { | |
1066 } | |
1067 | |
1068 class PHP_Token_MUL_EQUAL extends PHP_Token | |
1069 { | |
1070 } | |
1071 | |
1072 class PHP_Token_NEW extends PHP_Token | |
1073 { | |
1074 } | |
1075 | |
1076 class PHP_Token_NUM_STRING extends PHP_Token | |
1077 { | |
1078 } | |
1079 | |
1080 class PHP_Token_OBJECT_CAST extends PHP_Token | |
1081 { | |
1082 } | |
1083 | |
1084 class PHP_Token_OBJECT_OPERATOR extends PHP_Token | |
1085 { | |
1086 } | |
1087 | |
1088 class PHP_Token_OPEN_BRACKET extends PHP_Token | |
1089 { | |
1090 } | |
1091 | |
1092 class PHP_Token_OPEN_CURLY extends PHP_Token | |
1093 { | |
1094 } | |
1095 | |
1096 class PHP_Token_OPEN_SQUARE extends PHP_Token | |
1097 { | |
1098 } | |
1099 | |
1100 class PHP_Token_OPEN_TAG extends PHP_Token | |
1101 { | |
1102 } | |
1103 | |
1104 class PHP_Token_OPEN_TAG_WITH_ECHO extends PHP_Token | |
1105 { | |
1106 } | |
1107 | |
1108 class PHP_Token_OR_EQUAL extends PHP_Token | |
1109 { | |
1110 } | |
1111 | |
1112 class PHP_Token_PAAMAYIM_NEKUDOTAYIM extends PHP_Token | |
1113 { | |
1114 } | |
1115 | |
1116 class PHP_Token_PERCENT extends PHP_Token | |
1117 { | |
1118 } | |
1119 | |
1120 class PHP_Token_PIPE extends PHP_Token | |
1121 { | |
1122 } | |
1123 | |
1124 class PHP_Token_PLUS extends PHP_Token | |
1125 { | |
1126 } | |
1127 | |
1128 class PHP_Token_PLUS_EQUAL extends PHP_Token | |
1129 { | |
1130 } | |
1131 | |
1132 class PHP_Token_PRINT extends PHP_Token | |
1133 { | |
1134 } | |
1135 | |
1136 class PHP_Token_PRIVATE extends PHP_Token | |
1137 { | |
1138 } | |
1139 | |
1140 class PHP_Token_PROTECTED extends PHP_Token | |
1141 { | |
1142 } | |
1143 | |
1144 class PHP_Token_PUBLIC extends PHP_Token | |
1145 { | |
1146 } | |
1147 | |
1148 class PHP_Token_QUESTION_MARK extends PHP_Token | |
1149 { | |
1150 } | |
1151 | |
1152 class PHP_Token_REQUIRE extends PHP_Token_Includes | |
1153 { | |
1154 } | |
1155 | |
1156 class PHP_Token_REQUIRE_ONCE extends PHP_Token_Includes | |
1157 { | |
1158 } | |
1159 | |
1160 class PHP_Token_RETURN extends PHP_Token | |
1161 { | |
1162 } | |
1163 | |
1164 class PHP_Token_SEMICOLON extends PHP_Token | |
1165 { | |
1166 } | |
1167 | |
1168 class PHP_Token_SL extends PHP_Token | |
1169 { | |
1170 } | |
1171 | |
1172 class PHP_Token_SL_EQUAL extends PHP_Token | |
1173 { | |
1174 } | |
1175 | |
1176 class PHP_Token_SR extends PHP_Token | |
1177 { | |
1178 } | |
1179 | |
1180 class PHP_Token_SR_EQUAL extends PHP_Token | |
1181 { | |
1182 } | |
1183 | |
1184 class PHP_Token_START_HEREDOC extends PHP_Token | |
1185 { | |
1186 } | |
1187 | |
1188 class PHP_Token_STATIC extends PHP_Token | |
1189 { | |
1190 } | |
1191 | |
1192 class PHP_Token_STRING extends PHP_Token | |
1193 { | |
1194 } | |
1195 | |
1196 class PHP_Token_STRING_CAST extends PHP_Token | |
1197 { | |
1198 } | |
1199 | |
1200 class PHP_Token_STRING_VARNAME extends PHP_Token | |
1201 { | |
1202 } | |
1203 | |
1204 class PHP_Token_SWITCH extends PHP_Token | |
1205 { | |
1206 } | |
1207 | |
1208 class PHP_Token_THROW extends PHP_Token | |
1209 { | |
1210 } | |
1211 | |
1212 class PHP_Token_TILDE extends PHP_Token | |
1213 { | |
1214 } | |
1215 | |
1216 class PHP_Token_TRY extends PHP_Token | |
1217 { | |
1218 } | |
1219 | |
1220 class PHP_Token_UNSET extends PHP_Token | |
1221 { | |
1222 } | |
1223 | |
1224 class PHP_Token_UNSET_CAST extends PHP_Token | |
1225 { | |
1226 } | |
1227 | |
1228 class PHP_Token_USE extends PHP_Token | |
1229 { | |
1230 } | |
1231 | |
1232 class PHP_Token_USE_FUNCTION extends PHP_Token | |
1233 { | |
1234 } | |
1235 | |
1236 class PHP_Token_VAR extends PHP_Token | |
1237 { | |
1238 } | |
1239 | |
1240 class PHP_Token_VARIABLE extends PHP_Token | |
1241 { | |
1242 } | |
1243 | |
1244 class PHP_Token_WHILE extends PHP_Token | |
1245 { | |
1246 } | |
1247 | |
1248 class PHP_Token_WHITESPACE extends PHP_Token | |
1249 { | |
1250 } | |
1251 | |
1252 class PHP_Token_XOR_EQUAL extends PHP_Token | |
1253 { | |
1254 } | |
768 | 1255 |
769 // Tokens introduced in PHP 5.1 | 1256 // Tokens introduced in PHP 5.1 |
770 class PHP_Token_HALT_COMPILER extends PHP_Token {} | 1257 class PHP_Token_HALT_COMPILER extends PHP_Token |
1258 { | |
1259 } | |
771 | 1260 |
772 // Tokens introduced in PHP 5.3 | 1261 // Tokens introduced in PHP 5.3 |
773 class PHP_Token_DIR extends PHP_Token {} | 1262 class PHP_Token_DIR extends PHP_Token |
774 class PHP_Token_GOTO extends PHP_Token {} | 1263 { |
1264 } | |
1265 | |
1266 class PHP_Token_GOTO extends PHP_Token | |
1267 { | |
1268 } | |
775 | 1269 |
776 class PHP_Token_NAMESPACE extends PHP_TokenWithScope | 1270 class PHP_Token_NAMESPACE extends PHP_TokenWithScope |
777 { | 1271 { |
778 /** | 1272 /** |
779 * @return string | 1273 * @return string |
780 */ | 1274 */ |
781 public function getName() | 1275 public function getName() |
782 { | 1276 { |
783 $tokens = $this->tokenStream->tokens(); | 1277 $tokens = $this->tokenStream->tokens(); |
784 $namespace = (string)$tokens[$this->id+2]; | 1278 $namespace = (string) $tokens[$this->id + 2]; |
785 | 1279 |
786 for ($i = $this->id + 3;; $i += 2) { | 1280 for ($i = $this->id + 3;; $i += 2) { |
787 if (isset($tokens[$i]) && | 1281 if (isset($tokens[$i]) && |
788 $tokens[$i] instanceof PHP_Token_NS_SEPARATOR) { | 1282 $tokens[$i] instanceof PHP_Token_NS_SEPARATOR) { |
789 $namespace .= '\\' . $tokens[$i+1]; | 1283 $namespace .= '\\' . $tokens[$i + 1]; |
790 } else { | 1284 } else { |
791 break; | 1285 break; |
792 } | 1286 } |
793 } | 1287 } |
794 | 1288 |
795 return $namespace; | 1289 return $namespace; |
796 } | 1290 } |
797 } | 1291 } |
798 | 1292 |
799 class PHP_Token_NS_C extends PHP_Token {} | 1293 class PHP_Token_NS_C extends PHP_Token |
800 class PHP_Token_NS_SEPARATOR extends PHP_Token {} | 1294 { |
1295 } | |
1296 | |
1297 class PHP_Token_NS_SEPARATOR extends PHP_Token | |
1298 { | |
1299 } | |
801 | 1300 |
802 // Tokens introduced in PHP 5.4 | 1301 // Tokens introduced in PHP 5.4 |
803 class PHP_Token_CALLABLE extends PHP_Token {} | 1302 class PHP_Token_CALLABLE extends PHP_Token |
804 class PHP_Token_INSTEADOF extends PHP_Token {} | 1303 { |
805 class PHP_Token_TRAIT extends PHP_Token_INTERFACE {} | 1304 } |
806 class PHP_Token_TRAIT_C extends PHP_Token {} | 1305 |
1306 class PHP_Token_INSTEADOF extends PHP_Token | |
1307 { | |
1308 } | |
1309 | |
1310 class PHP_Token_TRAIT extends PHP_Token_INTERFACE | |
1311 { | |
1312 } | |
1313 | |
1314 class PHP_Token_TRAIT_C extends PHP_Token | |
1315 { | |
1316 } | |
807 | 1317 |
808 // Tokens introduced in PHP 5.5 | 1318 // Tokens introduced in PHP 5.5 |
809 class PHP_Token_FINALLY extends PHP_Token {} | 1319 class PHP_Token_FINALLY extends PHP_Token |
810 class PHP_Token_YIELD extends PHP_Token {} | 1320 { |
1321 } | |
1322 | |
1323 class PHP_Token_YIELD extends PHP_Token | |
1324 { | |
1325 } | |
811 | 1326 |
812 // Tokens introduced in PHP 5.6 | 1327 // Tokens introduced in PHP 5.6 |
813 class PHP_Token_ELLIPSIS extends PHP_Token {} | 1328 class PHP_Token_ELLIPSIS extends PHP_Token |
814 class PHP_Token_POW extends PHP_Token {} | 1329 { |
815 class PHP_Token_POW_EQUAL extends PHP_Token {} | 1330 } |
1331 | |
1332 class PHP_Token_POW extends PHP_Token | |
1333 { | |
1334 } | |
1335 | |
1336 class PHP_Token_POW_EQUAL extends PHP_Token | |
1337 { | |
1338 } | |
816 | 1339 |
817 // Tokens introduced in PHP 7.0 | 1340 // Tokens introduced in PHP 7.0 |
818 class PHP_Token_COALESCE extends PHP_Token {} | 1341 class PHP_Token_COALESCE extends PHP_Token |
819 class PHP_Token_SPACESHIP extends PHP_Token {} | 1342 { |
820 class PHP_Token_YIELD_FROM extends PHP_Token {} | 1343 } |
1344 | |
1345 class PHP_Token_SPACESHIP extends PHP_Token | |
1346 { | |
1347 } | |
1348 | |
1349 class PHP_Token_YIELD_FROM extends PHP_Token | |
1350 { | |
1351 } | |
821 | 1352 |
822 // Tokens introduced in HackLang / HHVM | 1353 // Tokens introduced in HackLang / HHVM |
823 class PHP_Token_ASYNC extends PHP_Token {} | 1354 class PHP_Token_ASYNC extends PHP_Token |
824 class PHP_Token_AWAIT extends PHP_Token {} | 1355 { |
825 class PHP_Token_COMPILER_HALT_OFFSET extends PHP_Token {} | 1356 } |
826 class PHP_Token_ENUM extends PHP_Token {} | 1357 |
827 class PHP_Token_EQUALS extends PHP_Token {} | 1358 class PHP_Token_AWAIT extends PHP_Token |
828 class PHP_Token_IN extends PHP_Token {} | 1359 { |
829 class PHP_Token_JOIN extends PHP_Token {} | 1360 } |
830 class PHP_Token_LAMBDA_ARROW extends PHP_Token {} | 1361 |
831 class PHP_Token_LAMBDA_CP extends PHP_Token {} | 1362 class PHP_Token_COMPILER_HALT_OFFSET extends PHP_Token |
832 class PHP_Token_LAMBDA_OP extends PHP_Token {} | 1363 { |
833 class PHP_Token_ONUMBER extends PHP_Token {} | 1364 } |
834 class PHP_Token_NULLSAFE_OBJECT_OPERATOR extends PHP_Token {} | 1365 |
835 class PHP_Token_SHAPE extends PHP_Token {} | 1366 class PHP_Token_ENUM extends PHP_Token |
836 class PHP_Token_SUPER extends PHP_Token {} | 1367 { |
837 class PHP_Token_TYPE extends PHP_Token {} | 1368 } |
838 class PHP_Token_TYPELIST_GT extends PHP_Token {} | 1369 |
839 class PHP_Token_TYPELIST_LT extends PHP_Token {} | 1370 class PHP_Token_EQUALS extends PHP_Token |
840 class PHP_Token_WHERE extends PHP_Token {} | 1371 { |
841 class PHP_Token_XHP_ATTRIBUTE extends PHP_Token {} | 1372 } |
842 class PHP_Token_XHP_CATEGORY extends PHP_Token {} | 1373 |
843 class PHP_Token_XHP_CATEGORY_LABEL extends PHP_Token {} | 1374 class PHP_Token_IN extends PHP_Token |
844 class PHP_Token_XHP_CHILDREN extends PHP_Token {} | 1375 { |
845 class PHP_Token_XHP_LABEL extends PHP_Token {} | 1376 } |
846 class PHP_Token_XHP_REQUIRED extends PHP_Token {} | 1377 |
847 class PHP_Token_XHP_TAG_GT extends PHP_Token {} | 1378 class PHP_Token_JOIN extends PHP_Token |
848 class PHP_Token_XHP_TAG_LT extends PHP_Token {} | 1379 { |
849 class PHP_Token_XHP_TEXT extends PHP_Token {} | 1380 } |
1381 | |
1382 class PHP_Token_LAMBDA_ARROW extends PHP_Token | |
1383 { | |
1384 } | |
1385 | |
1386 class PHP_Token_LAMBDA_CP extends PHP_Token | |
1387 { | |
1388 } | |
1389 | |
1390 class PHP_Token_LAMBDA_OP extends PHP_Token | |
1391 { | |
1392 } | |
1393 | |
1394 class PHP_Token_ONUMBER extends PHP_Token | |
1395 { | |
1396 } | |
1397 | |
1398 class PHP_Token_NULLSAFE_OBJECT_OPERATOR extends PHP_Token | |
1399 { | |
1400 } | |
1401 | |
1402 class PHP_Token_SHAPE extends PHP_Token | |
1403 { | |
1404 } | |
1405 | |
1406 class PHP_Token_SUPER extends PHP_Token | |
1407 { | |
1408 } | |
1409 | |
1410 class PHP_Token_TYPE extends PHP_Token | |
1411 { | |
1412 } | |
1413 | |
1414 class PHP_Token_TYPELIST_GT extends PHP_Token | |
1415 { | |
1416 } | |
1417 | |
1418 class PHP_Token_TYPELIST_LT extends PHP_Token | |
1419 { | |
1420 } | |
1421 | |
1422 class PHP_Token_WHERE extends PHP_Token | |
1423 { | |
1424 } | |
1425 | |
1426 class PHP_Token_XHP_ATTRIBUTE extends PHP_Token | |
1427 { | |
1428 } | |
1429 | |
1430 class PHP_Token_XHP_CATEGORY extends PHP_Token | |
1431 { | |
1432 } | |
1433 | |
1434 class PHP_Token_XHP_CATEGORY_LABEL extends PHP_Token | |
1435 { | |
1436 } | |
1437 | |
1438 class PHP_Token_XHP_CHILDREN extends PHP_Token | |
1439 { | |
1440 } | |
1441 | |
1442 class PHP_Token_XHP_LABEL extends PHP_Token | |
1443 { | |
1444 } | |
1445 | |
1446 class PHP_Token_XHP_REQUIRED extends PHP_Token | |
1447 { | |
1448 } | |
1449 | |
1450 class PHP_Token_XHP_TAG_GT extends PHP_Token | |
1451 { | |
1452 } | |
1453 | |
1454 class PHP_Token_XHP_TAG_LT extends PHP_Token | |
1455 { | |
1456 } | |
1457 | |
1458 class PHP_Token_XHP_TEXT extends PHP_Token | |
1459 { | |
1460 } |