
    |e                     d    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 G d de      Zy)z
    pygments.lexers.j
    ~~~~~~~~~~~~~~~~~

    Lexer for the J 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OperatorPunctuationString
WhitespaceJLexerc                      e Zd ZdZdZdZdgZdgZdgZdZ	de
j                  fd	e
j                  fd
 eee
j                        dfd eee
j                        fdefdedfdej$                  dfd eej$                  eej$                  e      dfdej&                  dfd eej&                  eej&                        df ede	dz         ej*                  f edd      ej*                  fe	ej,                  f ed      ej&                  fdefdefdej2                  fdej2                  fdej4                  fd ed!f ed"      gd#e
j                  fd$e
j                  d%fd&e
j                  fgd'ej:                  f ed(      d#efd$ej*                  d%fd&efgd)efd*efd+ej>                  fd,ej@                  jB                  fd-ej@                  fgd.efd$ej*                  d%fd&efgd/ed%f ed       ed(      gd0efd1efded%fgd2Z"y3)4r   z7
    For J source code.

    .. versionadded:: 2.1
    Jzhttp://jsoftware.com/jz*.ijsztext/x-jz\b[a-zA-Z]\w*z#!.*$zNB\..*z(\n+\s*)(Note)commentz(\s*)(Note.*)z\s+'singlequotez	0\s+:\s*0nounDefinitionz(noun)(\s+)(define)(\s*)$z([1-4]|13)\s+:\s*0\bexplicitDefinitionz3(adverb|conjunction|dyad|monad|verb)(\s+)(define)\b)for_goto_label_z\.)suffix)assertbreakcasecatchcatchdcatchtcontinuedoelseelseifendfcaseforifreturnselectthrowtrywhilewhilst)TARGVCRCRLFDELDebugEAVEMPTYFFJVERSIONLFLF2NoteTABalpha17alpha27applybindboxopenboxxopenbxclearcutLFcutopendatatypedefdfhdropeachechoemptyeraseeveryevtloopexitexpandfetchfile2url	fixdotdotfliprgbgetargsgetenvhfdinvinverseiospathisattyisutf8itemsleaflist	nameclassnamelistnamesncnlonpickrowsscriptscriptdsignsminfosmoutputsortsplitstderrstdinstdouttabletake
timespacextimextmoutputtoCRLFtoHOSTtoJtolowertouppertypeucpucpcountusleeputf8uucpz=[.:]z![-=+*#$%@!~`^&";:.,<>{}\[\]\\|/?]z[abCdDeEfHiIjLMoprtT]\.z[aDiLpqsStux]\:z
(_[0-9])\:z\(parenthesesnumbersz[^)]z^\)z#popz[)]z\b[nmuvxy]\brootz
\b_{1,2}\bz)_?\d+(\.\d+)?(\s*[ejr]\s*)_?\d+(\.?=\d+)?z_?\d+\.(?=\d+)z_?\d+xz_?\d+z[^)]+z\)z[^']+z'')r   r   r   r   r   r   r   N)#__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypes	validNamer   PreprocSingler   r   	Multiliner   r	   EntityFunctionr   LabelVariabler   r   ReservedConstantr   r   	Decoratorr
   FloatIntegerLongtokens     3/usr/lib/python3/dist-packages/pygments/lexers/j.pyr   r      s    D
!CeG	II I
 w' 'W5F5F Gx
GNNCD Z  6=) 4;;(89)8DKKZ,)*:<$35C
DMMB$&
 .yGT 
  !
 #'**. &   & MM'#, x  28< ('*:*:;!1!12G,,- K/ IWL
^ g''(W&&/W&&'
 dnn-FOdOTZZ(TN
 F#96B-++,v~~&
 vTZZ(V
 K(()FO	
 vFO66"
ewFr   N)r   pygments.lexerr   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   r   __all__r   r   r   r   <module>r      s9    @ ?$ $ $ *FZ Fr   