aboutsummaryrefslogtreecommitdiff
path: root/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/gas.xml
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/alecthomas/chroma/v2/lexers/embedded/gas.xml')
-rw-r--r--vendor/github.com/alecthomas/chroma/v2/lexers/embedded/gas.xml121
1 files changed, 121 insertions, 0 deletions
diff --git a/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/gas.xml b/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/gas.xml
new file mode 100644
index 0000000..1ef31de
--- /dev/null
+++ b/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/gas.xml
@@ -0,0 +1,121 @@
1<lexer>
2 <config>
3 <name>GAS</name>
4 <alias>gas</alias>
5 <alias>asm</alias>
6 <filename>*.s</filename>
7 <filename>*.S</filename>
8 <mime_type>text/x-gas</mime_type>
9 </config>
10 <rules>
11 <state name="punctuation">
12 <rule pattern="[-*,.()\[\]!:]+">
13 <token type="Punctuation"/>
14 </rule>
15 </state>
16 <state name="root">
17 <rule>
18 <include state="whitespace"/>
19 </rule>
20 <rule pattern="(?:[a-zA-Z$_][\w$.@-]*|\.[\w$.@-]+):">
21 <token type="NameLabel"/>
22 </rule>
23 <rule pattern="\.(?:[a-zA-Z$_][\w$.@-]*|\.[\w$.@-]+)">
24 <token type="NameAttribute"/>
25 <push state="directive-args"/>
26 </rule>
27 <rule pattern="lock|rep(n?z)?|data\d+">
28 <token type="NameAttribute"/>
29 </rule>
30 <rule pattern="(?:[a-zA-Z$_][\w$.@-]*|\.[\w$.@-]+)">
31 <token type="NameFunction"/>
32 <push state="instruction-args"/>
33 </rule>
34 <rule pattern="[\r\n]+">
35 <token type="Text"/>
36 </rule>
37 </state>
38 <state name="directive-args">
39 <rule pattern="(?:[a-zA-Z$_][\w$.@-]*|\.[\w$.@-]+)">
40 <token type="NameConstant"/>
41 </rule>
42 <rule pattern="&#34;(\\&#34;|[^&#34;])*&#34;">
43 <token type="LiteralString"/>
44 </rule>
45 <rule pattern="@(?:[a-zA-Z$_][\w$.@-]*|\.[\w$.@-]+)">
46 <token type="NameAttribute"/>
47 </rule>
48 <rule pattern="(?:0[xX][a-zA-Z0-9]+|\d+)">
49 <token type="LiteralNumberInteger"/>
50 </rule>
51 <rule pattern="[\r\n]+">
52 <token type="Text"/>
53 <pop depth="1"/>
54 </rule>
55 <rule>
56 <include state="punctuation"/>
57 </rule>
58 <rule>
59 <include state="whitespace"/>
60 </rule>
61 </state>
62 <state name="instruction-args">
63 <rule pattern="([a-z0-9]+)( )(&lt;)((?:[a-zA-Z$_][\w$.@-]*|\.[\w$.@-]+))(&gt;)">
64 <bygroups>
65 <token type="LiteralNumberHex"/>
66 <token type="Text"/>
67 <token type="Punctuation"/>
68 <token type="NameConstant"/>
69 <token type="Punctuation"/>
70 </bygroups>
71 </rule>
72 <rule pattern="([a-z0-9]+)( )(&lt;)((?:[a-zA-Z$_][\w$.@-]*|\.[\w$.@-]+))([-+])((?:0[xX][a-zA-Z0-9]+|\d+))(&gt;)">
73 <bygroups>
74 <token type="LiteralNumberHex"/>
75 <token type="Text"/>
76 <token type="Punctuation"/>
77 <token type="NameConstant"/>
78 <token type="Punctuation"/>
79 <token type="LiteralNumberInteger"/>
80 <token type="Punctuation"/>
81 </bygroups>
82 </rule>
83 <rule pattern="(?:[a-zA-Z$_][\w$.@-]*|\.[\w$.@-]+)">
84 <token type="NameConstant"/>
85 </rule>
86 <rule pattern="(?:0[xX][a-zA-Z0-9]+|\d+)">
87 <token type="LiteralNumberInteger"/>
88 </rule>
89 <rule pattern="%(?:[a-zA-Z$_][\w$.@-]*|\.[\w$.@-]+)">
90 <token type="NameVariable"/>
91 </rule>
92 <rule pattern="$(?:0[xX][a-zA-Z0-9]+|\d+)">
93 <token type="LiteralNumberInteger"/>
94 </rule>
95 <rule pattern="$&#39;(.|\\&#39;)&#39;">
96 <token type="LiteralStringChar"/>
97 </rule>
98 <rule pattern="[\r\n]+">
99 <token type="Text"/>
100 <pop depth="1"/>
101 </rule>
102 <rule>
103 <include state="punctuation"/>
104 </rule>
105 <rule>
106 <include state="whitespace"/>
107 </rule>
108 </state>
109 <state name="whitespace">
110 <rule pattern="\n">
111 <token type="Text"/>
112 </rule>
113 <rule pattern="\s+">
114 <token type="Text"/>
115 </rule>
116 <rule pattern="[;#].*?\n">
117 <token type="Comment"/>
118 </rule>
119 </state>
120 </rules>
121</lexer> \ No newline at end of file