
    Mh                         d Z ddl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dlmZmZ dgZ G d de          ZdS )z
    pygments.lexers.stata
    ~~~~~~~~~~~~~~~~~~~~~

    Lexer for Stata

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    N)
RegexLexerdefaultincludewords)CommentKeywordNameNumberStringTextOperator)builtins_basebuiltins_functions
StataLexerc                   J   e Zd ZdZdZdZdZddgZddgZg d	Z	e
j        e
j        z  Zi d
 ed           ed           ed           ed           ed           ed           ed          defgddej        dfdej        dfdej        dfdej        dfgddej        dfdej        fdej        dfdej        fgddej        d fdej        d!fdej        dfd"ej        dfdej        fgdd#ej        dfd$ej        dfdej        fgdd#edfdej        fgdd%ed&fd'ed(fgd&d%edfd)edfd*ej        f ed          defgd(d+edfd*ej        f ed          defgdd,ej        j        d-fd.ej        j        d/fd0ej        d1fgd1d0ej        dfd2ej        dfd,ej        j        d-fd.ej        j        d/fdej        fgd-d,ej        j        dfd3ej        j        dfd.ej        j        d/fd0ej        d1fd4ej        j        f ed          gd/d,ej        j        d-dfd.ej        j        d/dfd0ej        d1dfd5ej        j        dfgd eed6d78          ej        f eed9d68          efgdd:efd;efgdd<e fgdd=ej!        fd>ej!        fd?ej!        fd@ej!        fgZ"dAS )Br   z
    For Stata do files.
    Statazhttp://www.stata.com/z2.2statadoz*.doz*.ado)ztext/x-stataz
text/statazapplication/x-statarootcommentsstringsmacrosnumberskeywords	operatorsformat.z(^//|(?<=\s)//)(?!/)comments-double-slashz^\s*\*zcomments-starz/\*zcomments-blockz(^///|(?<=\s)///)comments-triple-slashz#pushz\*/\*z(\*/\s+\*(?!/)[^\n]*)|(\*/)#popz///.*?\n)r    r   )r    r   z.(?=\n)z\nz//.*?(?=\n)z`"zstring-compoundz(?<!`)"zstring-regularz"\'z\\\\|\\"|\\\$|\\`|\\\nz(")(?!\')|(?=\n)z\$(\{|(?=[$`]))zmacro-global-nestedz\$zmacro-global-name`zmacro-local'z\}z\wz\w{1,32}z\bz(?=\())prefixsuffixz	(^\s*|\s)z-|==|<=|>=|<|>|&|!=z\*|\+|\^|/|!|~|==|~=z>\b[+-]?([0-9]+(\.[0-9]+)?|\.[0-9]+|\.)([eE][+-]?[0-9]+)?[i]?\bz%-?\d{1,2}(\.\d{1,2})?[gfe]c?z%(21x|16H|16L|8H|8L)z'%-?(tc|tC|td|tw|tm|tq|th|ty|tg)\S{0,32}z%[-~]?\d{1,4}sN)#__name__
__module____qualname____doc__nameurlversion_addedaliases	filenames	mimetypesre	MULTILINEDOTALLflagsr   r   r   Single	MultilineSpecialr   Escaper	   VariableGlobalr   r   r   Functionr   r   r   r
   Othertokens     U/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pygments/lexers/stata.pyr   r      s         D
!CM$G!IEEEIry(EDGJGIGHGIGJGK  GH4L	
D 	$gn6MN8W&(89!7?4KL	
D* 	W&0 w()+W->G7$%
+D< 	'.13$gn13W&(8907>"
=DN 	 GOV,W^V47?#	"
ODZ 	 D&!7>""
[Df 	F-.!12
gDn 	FG$VV$&6GH6N
oD| 	 &&1&6GH6N	
}Db 	!57LMDM(+>?4=-0
cDl 	4='*4=&)!57LMDM(*=>4=!
mDz 	!5w?DM(&1DM(*=>4=-0DM()GFOO 
{DJ 	!57LfUDM(*=vF4=-8$-.7	
KDX 	U%	JJJ]U=<%HHH
YDf 	#X.$h/
gDp 	N
qD| 	-tz:$dj17D
+	
}DFFFr=   )r(   r/   pygments.lexerr   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   pygments.lexers._stata_builtinsr   r   __all__r   r<   r=   r>   <module>rC      s     
			 > > > > > > > > > > > >                  N M M M M M M M.U U U U U U U U U Ur=   