...
1<lexer>
2 <config>
3 <name>Plutus Core</name>
4 <alias>plutus-core</alias>
5 <alias>plc</alias>
6 <filename>*.plc</filename>
7 <mime_type>text/x-plutus-core</mime_type>
8 <mime_type>application/x-plutus-core</mime_type>
9 </config>
10 <rules>
11 <state name="root">
12 <rule pattern="\s+">
13 <token type="Text"/>
14 </rule>
15 <rule pattern="(\(|\))">
16 <token type="Punctuation"/>
17 </rule>
18 <rule pattern="(\[|\])">
19 <token type="Punctuation"/>
20 </rule>
21 <rule pattern="({|})">
22 <token type="Punctuation"/>
23 </rule>
24 <rule pattern="([+-]?\d+)">
25 <token type="LiteralNumberInteger"/>
26 </rule>
27 <rule pattern="(#([a-fA-F0-9][a-fA-F0-9])+)">
28 <token type="LiteralString"/>
29 </rule>
30 <rule pattern="(\(\))">
31 <token type="NameConstant"/>
32 </rule>
33 <rule pattern="(True|False)">
34 <token type="NameConstant"/>
35 </rule>
36 <rule pattern="(con |abs |iwrap |unwrap |lam |builtin |delay |force |error)">
37 <token type="Keyword"/>
38 </rule>
39 <rule pattern="(fun |all |ifix |lam |con )">
40 <token type="Keyword"/>
41 </rule>
42 <rule pattern="(type|fun )">
43 <token type="Keyword"/>
44 </rule>
45 <rule pattern="(program )(\S+)">
46 <bygroups>
47 <token type="Keyword"/>
48 <token type="LiteralString"/>
49 </bygroups>
50 </rule>
51 <rule pattern="(unit|bool|integer|bytestring|string)">
52 <token type="KeywordType"/>
53 </rule>
54 <rule pattern="(addInteger |subtractInteger |multiplyInteger |divideInteger |quotientInteger |remainderInteger |modInteger |equalsInteger |lessThanInteger |lessThanEqualsInteger )">
55 <token type="NameBuiltin"/>
56 </rule>
57 <rule pattern="(appendByteString |consByteString |sliceByteString |lengthOfByteString |indexByteString |equalsByteString |lessThanByteString |lessThanEqualsByteString )">
58 <token type="NameBuiltin"/>
59 </rule>
60 <rule pattern="(sha2_256 |sha3_256 |blake2b_256 |verifySignature )">
61 <token type="NameBuiltin"/>
62 </rule>
63 <rule pattern="(appendString |equalsString |encodeUtf8 |decodeUtf8 )">
64 <token type="NameBuiltin"/>
65 </rule>
66 <rule pattern="(ifThenElse )">
67 <token type="NameBuiltin"/>
68 </rule>
69 <rule pattern="(chooseUnit )">
70 <token type="NameBuiltin"/>
71 </rule>
72 <rule pattern="(trace )">
73 <token type="NameBuiltin"/>
74 </rule>
75 <rule pattern="(fstPair |sndPair )">
76 <token type="NameBuiltin"/>
77 </rule>
78 <rule pattern="(chooseList |mkCons |headList |tailList |nullList )">
79 <token type="NameBuiltin"/>
80 </rule>
81 <rule pattern="(chooseData |constrData |mapData |listData |iData |bData |unConstrData |unMapData |unListData |unIData |unBData |equalsData )">
82 <token type="NameBuiltin"/>
83 </rule>
84 <rule pattern="(mkPairData |mkNilData |mkNilPairData )">
85 <token type="NameBuiltin"/>
86 </rule>
87 <rule pattern="([a-zA-Z][a-zA-Z0-9_']*)">
88 <token type="Name"/>
89 </rule>
90 <rule pattern=""">
91 <token type="LiteralStringDouble"/>
92 <push state="string"/>
93 </rule>
94 </state>
95 <state name="string">
96 <rule pattern="[^\\"]+">
97 <token type="LiteralStringDouble"/>
98 </rule>
99 <rule pattern=""">
100 <token type="LiteralStringDouble"/>
101 <pop depth="1"/>
102 </rule>
103 </state>
104 </rules>
105</lexer>
View as plain text