File: //opt/saltstack/salt/lib/python3.10/site-packages/pygments/lexers/__pycache__/elm.cpython-310.pyc
o
;jS � @ sZ d Z ddlmZmZmZmZ ddlmZmZm Z m
Z
mZmZm
Z
dgZG dd� de�ZdS )z�
pygments.lexers.elm
~~~~~~~~~~~~~~~~~~~
Lexer for the Elm programming language.
:copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�words�include�bygroups)�Comment�Keyword�Name�Number�Punctuation�String�
Whitespace�ElmLexerc @ sl e Zd ZdZdZdZdgZdgZdgZdZ dZ
d Zd
Ze
ddd
�Zdejdfdejfdefdedfdeeeje�dfdeeeje�dfdejdfeejfdejfeejfe
eddd�ejfe
e�ejfed�e
ejfdefgdejfdejdfd ejfd!ejd"fgd#ejfd$ejfd%efded"fgd&ej d"fgd'e!j"fd(e!j#fgd)ejfd*ejd"fd+eeje�fgd,�Z$d-S ).r
z
For Elm source code.
ZElmzhttps://elm-lang.org/Zelmz*.elmz
text/x-elmz2.1z[a-z_][a-zA-Z0-9_\']*z^main )!�~z||z|>�|�`�^�\�'z>>z>=�>z==�=z<~z<|z<=z<<z<-�<z::�:z/=z//�/z..�.z->�-z++�+�*z&&�%)�alias�as�case�else�if�import�inZlet�moduleZof�portZthen�type�wherez\b)�suffixz\{-�commentz--.*z\s+�"�doublequotez^(\s*)(module)(\s*)�importsz^(\s*)(import)(\s*)z
\[glsl\|.*�shaderz[A-Z][a-zA-Z0-9_]*z\(z\))�prefixr) �numbersz[,()\[\]{}]z-(?!\})z[^-}]z-\}z#popz\\u[0-9a-fA-F]{4}z\\[nrfvb\\"]z[^"]z\w+(\.\w+)*z_?\d+\.(?=\d+)z_?\d+z\|(?!\])z\|\]z(.*)(\n))�rootr* r, r- r0 r. N)%�__name__�
__module__�__qualname__�__doc__�name�url�aliases� filenamesZ mimetypesZ
version_addedZ validNameZspecialNameZ
builtinOpsr Z
reservedWordsr Z Multiline�Singler r r r � Namespacer ZEntityZReserved�TypeZFunctionr ZVariabler
ZEscapeZClassr ZFloatZInteger�tokens� r>