...

Text file src/github.com/alecthomas/chroma/v2/lexers/embedded/plutus_core.xml

Documentation: github.com/alecthomas/chroma/v2/lexers/embedded

     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_&#39;]*)">
    88        <token type="Name"/>
    89      </rule>
    90      <rule pattern="&#34;">
    91        <token type="LiteralStringDouble"/>
    92        <push state="string"/>
    93      </rule>
    94    </state>
    95    <state name="string">
    96      <rule pattern="[^\\&#34;]+">
    97        <token type="LiteralStringDouble"/>
    98      </rule>
    99      <rule pattern="&#34;">
   100        <token type="LiteralStringDouble"/>
   101        <pop depth="1"/>
   102      </rule>
   103    </state>
   104  </rules>
   105</lexer>

View as plain text