-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Expand file tree
/
Copy pathtoken-matching.xml
More file actions
59 lines (59 loc) · 1.98 KB
/
token-matching.xml
File metadata and controls
59 lines (59 loc) · 1.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?xml version="1.0"?>
<rules>
<rule version="1">
<pattern>Token :: (?:findm|(?:simple|)M)atch \([^,]+,\s+"(?:\s+|[^"]+?\s+")</pattern>
<message>
<id>TokenMatchSpacing</id>
<severity>style</severity>
<summary>Useless extra spacing for Token::*Match.</summary>
</message>
</rule>
<rule version="1">
<pattern>(?U)Token :: Match \([^,]+,\s+"[^%|!\[\]]+" \)</pattern>
<message>
<id>UseTokensimpleMatch</id>
<severity>error</severity>
<summary>Token::simpleMatch should be used to match tokens without special pattern requirements.</summary>
</message>
</rule>
<rule version="1">
<pattern>\b[\w_]+ \. tokAt \( 0 \)</pattern>
<message>
<id>TokentokAt0</id>
<severity>error</severity>
<summary>tok->tokAt(0) is a slow way to say tok.</summary>
</message>
</rule>
<rule version="1">
<pattern>\b[\w_]+ \. strAt \( 0 \)</pattern>
<message>
<id>TokenstrAt0</id>
<severity>error</severity>
<summary>tok->strAt(0) is a slow way to say tok->str()</summary>
</message>
</rule>
<rule version="1">
<pattern><![CDATA[Token :: Match \( (\b\w+\b) , \"%var%\" \) && (\b\1\b) \. variable \( \)]]></pattern>
<message>
<id>TokenMatchVariable</id>
<severity>error</severity>
<summary>Simplify 'Token :: Match ( expr , %var% ) && expr->variable()' to 'expr->variable()'</summary>
</message>
</rule>
<rule version="1">
<pattern><![CDATA[(?:\b\w+\b) \. next \( \) \. next \( \)]]></pattern>
<message>
<id>TokenNext</id>
<severity>error</severity>
<summary>Simplify 'tok->next()->next()' to 'tok->tokAt(2).'</summary>
</message>
</rule>
<rule version="1">
<pattern><![CDATA[(?:\b\w+\b) \. next \( \) \. link \( \)]]></pattern>
<message>
<id>TokenLink</id>
<severity>error</severity>
<summary>Simplify 'tok->next()->link()' to 'tok->linkAt(1).'</summary>
</message>
</rule>
</rules>