
    |eQ                     `    d Z ddlmZmZmZmZ ddlmZmZm	Z	m
Z
mZmZmZ dgZ G d de      Zy)z
    pygments.lexers.elm
    ~~~~~~~~~~~~~~~~~~~

    Lexer for the Elm programming language.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerwordsincludebygroups)CommentKeywordNameNumberPunctuationString
WhitespaceElmLexerc                   >   e Zd ZdZdZdZdgZdgZdgZdZ	dZ
d	Z ed
d      Zdej                  dfdej                   fdefdedfd eeej*                  e      dfd eeej*                  e      dfdej.                  dfeej0                  fdej2                  fe
ej0                  f eedd      ej4                  f ee      ej4                  f ed      e	ej8                  fdefgdej                  fdej                  dfdej                  fd ej                  d!fgd"ej<                  fd#ej<                  fd$efded!fgd%ej>                  d!fgd&e jB                  fd'e jD                  fgd(ej.                  fd)ej.                  d!fd* eej.                  e      fgd+Z#y,)-r   z9
    For Elm source code.

    .. versionadded:: 2.1
    Elmzhttps://elm-lang.org/elmz*.elmz
text/x-elmz[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inletmoduleofportthen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\))prefixr0   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))rootr1   r3   r4   r7   r5   N)$__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypes	validNamespecialName
builtinOpsr   reservedWordsr   	MultilineSingler   r   r   r   	Namespacer	   EntityReservedTypeFunctionr   Variabler   EscapeClassr
   FloatIntegertokens     5/usr/lib/python3/dist-packages/pygments/lexers/elm.pyr   r      s;    D
!CgG	II(IKJ   M W&&	2gnn% Z  6=) $Xj':K:K&&( $Xj':K:K&&( DKK2 G,,- #GLL1 '**+ Je<dmmL :. I & [)[/
d **+W&&	2w(()W&&/	
 "6==1fmm,f66"	
 TZZ0

 -v~~&
 $++&dkk6*(4;;
;<
SNFrT   N)r<   pygments.lexerr   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   __all__r   rS   rT   rU   <module>rY      s9    @ ?   ,jz jrT   