File tree Expand file tree Collapse file tree 3 files changed +57
-0
lines changed
Expand file tree Collapse file tree 3 files changed +57
-0
lines changed Original file line number Diff line number Diff line change 1+ <?php
2+
3+ declare (strict_types=1 );
4+
5+ namespace Tempest \Highlight \Languages \Php \Patterns ;
6+
7+ use Tempest \Highlight \IsPattern ;
8+ use Tempest \Highlight \Pattern ;
9+ use Tempest \Highlight \PatternTest ;
10+ use Tempest \Highlight \Tokens \TokenTypeEnum ;
11+
12+ #[PatternTest(input: '?> ' , output: '?> ' )]
13+ final readonly class PhpCloseTagPattern implements Pattern
14+ {
15+ use IsPattern;
16+
17+ public function getPattern (): string
18+ {
19+ return '(?<match>\?\>+) ' ;
20+ }
21+
22+ public function getTokenType (): TokenTypeEnum
23+ {
24+ return TokenTypeEnum::KEYWORD ;
25+ }
26+ }
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ declare (strict_types=1 );
4+
5+ namespace Tempest \Highlight \Languages \Php \Patterns ;
6+
7+ use Tempest \Highlight \IsPattern ;
8+ use Tempest \Highlight \Pattern ;
9+ use Tempest \Highlight \PatternTest ;
10+ use Tempest \Highlight \Tokens \TokenTypeEnum ;
11+
12+ #[PatternTest(input: '<?php ' , output: '<?php ' )]
13+ #[PatternTest(input: '<?= ' , output: '<?= ' )]
14+ final readonly class PhpOpenTagPattern implements Pattern
15+ {
16+ use IsPattern;
17+
18+ public function getPattern (): string
19+ {
20+ return '(?<match>\<\?[=|php]+) ' ;
21+ }
22+
23+ public function getTokenType (): TokenTypeEnum
24+ {
25+ return TokenTypeEnum::KEYWORD ;
26+ }
27+ }
Original file line number Diff line number Diff line change 3434use Tempest \Highlight \Languages \Php \Patterns \NestedFunctionCallPattern ;
3535use Tempest \Highlight \Languages \Php \Patterns \NewObjectPattern ;
3636use Tempest \Highlight \Languages \Php \Patterns \OperatorPattern ;
37+ use Tempest \Highlight \Languages \Php \Patterns \PhpCloseTagPattern ;
38+ use Tempest \Highlight \Languages \Php \Patterns \PhpOpenTagPattern ;
3739use Tempest \Highlight \Languages \Php \Patterns \PropertyAccessPattern ;
3840use Tempest \Highlight \Languages \Php \Patterns \PropertyHookGetPattern ;
3941use Tempest \Highlight \Languages \Php \Patterns \PropertyHookSetParameterTypePattern ;
@@ -76,6 +78,8 @@ public function getPatterns(): array
7678 return [
7779 ...parent ::getPatterns (),
7880
81+ new PhpOpenTagPattern (),
82+ new PhpCloseTagPattern (),
7983 new UseFunctionNamePattern (),
8084 new UseFunctionPattern (),
8185 new ClassNamePattern (),
You can’t perform that action at this time.
0 commit comments