
    |e                     h    d Z ddlmZmZ ddlmZmZmZmZm	Z	m
Z
mZmZ ddlmZ dgZ G d de      Zy)z
    pygments.lexers.futhark
    ~~~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Futhark language

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroups)CommentOperatorKeywordNameStringNumberPunctuation
Whitespace)	unistringFutharkLexerc                       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d
Zddj                  e	      z  ZdZdej"                  fdefdefddj                  e      z  ej*                  fddj                  e	e
z         z  ej,                  fdej.                  fdedeefdefdefdefdez   ej6                  fdez   ej6                  fdez   ej6                  fdez   ej6                  fdez   ej8                  fdez   ej:                  fdez   ej<                  fdej@                  d fd!ed"fd#ej,                  fdejB                  fgd$ej@                  d%fdejD                  d&fdej@                  d%fgd'efdejD                  d&fd!ed%fgd(ejD                  d%fd)e#jH                  z   d*z   ejD                  d%fdj                  e      ejD                  d%fd+ejD                  d%fd,ejD                  d%fd-ejD                  d%fd. e%eejD                        d%fgd/Z&y0)1r   z4
    A Futhark lexer

    .. versionadded:: 2.8
    Futharkzhttps://futhark-lang.org/futharkz*.futztext/x-futhark)
i8i16i32i64u8u16u32u64f32f64)bool)ifthenelsedefletloopinwithtypeztype~ztype^valentryforwhiledocasematchincludeimportmoduleopenlocalassert_)NULSOHz[SE]TXEOTENQACKBELBSHTLFVTFFCRzS[OI]DLEzDC[1-4]NAKSYNETBCANEMSUBESCz[FGRU]SSPDELz(%s)?|z[a-zA-Z_][a-zA-Z_0-9']*z--(.*?)$z\s+z\(\)z\b(%s)(?!\')\bz#\[([a-zA-Z_\(\) ]*)\]z[#!]?(z\.)*z\\z[-+/%=!><|&*^][-+/%=!><|&*^.]*z[][(),:;`{}?.\'~^]z40[xX]_*[\da-fA-F](_*[\da-fA-F])*_*[pP][+-]?\d(_*\d)*zR0[xX]_*[\da-fA-F](_*[\da-fA-F])*\.[\da-fA-F](_*[\da-fA-F])*(_*[pP][+-]?\d(_*\d)*)?z\d(_*\d)*_*[eE][+-]?\d(_*\d)*z+\d(_*\d)*\.\d(_*\d)*(_*[eE][+-]?\d(_*\d)*)?z0[bB]_*[01](_*[01])*z 0[xX]_*[\da-fA-F](_*[\da-fA-F])*z	\d(_*\d)*'	character"stringz\[[a-zA-Z_\d]*\]z[^\\']'z#popescapez[^\\"]+z[abfnrtv"\'&\\]z\^[][z@^_]zo[0-7]+zx[\da-fA-F]+z\d+z	(\s+)(\\))rootrL   rN   rO   N)'__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypes	num_typesother_typesreservedasciijoinnum_postfixidentifier_rer   Singler   r   r   ReservedTypePreprocr   r   r
   FloatBinHexIntegerr	   CharBuiltinEscapeuniLur   tokens     9/usr/lib/python3/dist-packages/pygments/lexers/futhark.pyr   r      s   
 D
%CkG	I!"ITIKOH
9E
 SXXi00K.M '..)Z k"(!33W5E5EF)k*A!BBGLLQ '8"/?FH.9"K0 E{R\\(*567=||E-;V\\J;kI6<<X${2FJJ?0;>

KK'8 6;;,68$ ',,/dll#? 
F f-FMM8,&++v&	
  FMM8,&&!
  7(&--@XXe_fmmV4/fmmV4V]]F+8J>G
]7Frp   N)rT   pygments.lexerr   r   pygments.tokenr   r   r   r   r	   r
   r   r   pygmentsr   rl   __all__r   ro   rp   rq   <module>rv      s7    0$ $ $ %
W: Wrp   