
    |e                     |    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mZ dgZdZdZedz   ez   Z G d de      Zy	)
z
    pygments.lexers.arrow
    ~~~~~~~~~~~~~~~~~~~~~

    Lexer for Arrow.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroupsdefaultinclude)TextOperatorKeywordPunctuationNameStringNumber
Whitespace
ArrowLexerz#\b(int|bool|char)((?:\[\])*)(?=\s+)z([a-zA-Z_][a-zA-Z0-9_]*)z(\s+)c                      e Zd ZdZdZdZdgZdgZdefde	f e
d       e
d	       e
d
      gdez   dz    eej                  ee	eej                  e	eej"                  e		      dfde	fge eej                  e	eej&                        fde	dfdefdej                  fdej                  dfgdefdej,                  fdej.                  fdej2                  dfdej4                  dfde	dfdefdej6                  fd eej                  eej                        fedz    eej"                  e	      dfeej&                  fde	dfd e	d
fd!e	d"fg e
d
      d#e	f ed"      ge eej                  e	eej&                        fd#e	fd!e	d"fgd$ej<                  fgdej2                  d"f e
d%      d&ej2                  fgdej4                  d"f e
d%      d'ej4                  fg e
d
      d(e	d"fd#e	fg e
d
      d!e	d"fd#e	fg e
d
      d)e	d"fgd*Zy+),r   z4
    Lexer for Arrow

    .. versionadded:: 2.7
    Arrowz'https://pypi.org/project/py-arrow-lang/arrowz*.arwz\s+z^[|\s]+blocks
statementsexpressionsz(function)(\n+)(/-->)(\s*)z(\()fparamsz/-->$|\\-->$|/--<|\\--<|\^z\[index=zrequire|mainprintz[0-9]+z
true|false'char"stringz\{arrayz==|!=|<|>|\+|-|\*|/|%zand|or|not|lengthz(input)(\s+)(int|char\[\])fargsz\(z\)z#pop,z<\\(["\\/abfnrtv]|[0-9]{1,3}|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})escapez[^'\\]z[^"\\]+z\}z\])rootr   r   r   r   r   r!   r   r   r   r   r   N) __name__
__module____qualname____doc__nameurlaliases	filenamesr   r
   r   DECLr   r	   ReservedTyper   Functionr   Variabler   r   IntegerConstantr   CharDoubleWordIDENTr   Escapetokens     7/usr/lib/python3/dist-packages/pygments/lexers/arrow.pyr   r      s    D
3CiG	I Z %HL!M"
 +!!:{W\\;
  +K8	
 8GLL+tT]]KLK)8g../w''1
 Z 'G,,-6;;'6==(+K)%x0!8==1*H  *gll-  W_h{ DMM"K)K/K(%
* M";FO
 8GLL+z4==QR;K(
 M]]

 6;;'H$
 6==&)H'
 M"K(;
 M"K(;
 M"K(
_SFr9   N)r&   pygments.lexerr   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   r   __all__TYPESr5   r+   r   r8   r9   r:   <module>r?      sR    B A   ..#x%_ _r9   