HEX
Server: Apache/2.4.67 (Debian)
System: Linux vps-b2547eb4 6.1.0-41-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.158-1 (2025-11-09) x86_64
User: root (0)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/pygments/lexers/__pycache__/pawn.cpython-311.pyc
�

�E�c����dZddlmZddlmZmZmZmZmZm	Z	m
Z
mZddlm
Z
ddgZGd�de��ZGd�de��Zd	S)
z�
    pygments.lexers.pawn
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for the Pawn languages.

    :copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�)�
RegexLexer)�Text�Comment�Operator�Keyword�Name�String�Number�Punctuation)�get_bool_opt�SourcePawnLexer�	PawnLexerc�B�eZdZdZdZdgZdgZdgZdZdZ	de
jd	fd
e
jdfde	zd
ze
jd	fde	zdze
jdfdefdefdefde
j
fde
jfdefdedfdejfdejfdejfdejfdejfdejfdefdefdefd ejfd!ejfd"efgd#ed$fd%ejfd&efdefd'efgd(e
jfd)e
jfd*e
j
d$fd+e
jfd,e
jfde
jd$fgd-e
jd.fd/e
jd$fd0e
fgd1�Zhd2�Zd3�Zd4�Z d5S)6r
z]
    For SourcePawn source code with preprocessor directives.

    .. versionadded:: 1.6
    �
SourcePawn�spz*.spztext/x-sourcepawnz(?:\s|//.*?\n|/\*.*?\*/)+�\s*(?:/[*].*?[*]/\s*)*�^#if\s+0�if0�^#�macro�^�#if\s+0�#�\n�\s+�\\\n�/(\\\n)?/(\n|(.|\n)*?[^\\]\n)z/(\\\n)?\*(.|\n)*?\*(\\\n)?/�[{}]�L?"�string�4L?'(\\.|\\[0-7]{1,3}|\\x[a-fA-F0-9]{1,2}|[^\\\'\n])'�'(\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+[LlUu]*�(\d+\.\d*|\.\d+|\d+[fF])[fF]?�0x[0-9a-fA-F]+[LlUu]*�0[0-7]+[LlUu]*�
\d+[LlUu]*�[~!%^&*+=|?:<>/-]�[()\[\],.;]zs(case|const|continue|native|default|else|enum|for|if|new|operator|public|return|sizeof|static|decl|struct|switch)\b�(bool|Float)\b�(true|false)\b�[a-zA-Z_]\w*�"�#pop�/\\([\\abfnrtv"\']|x[a-fA-F0-9]{2,4}|[0-7]{1,3})�	[^\\"\n]+�\\�[^/\n]+�/\*(.|\n)*?\*/�//.*?\n�/�	(?<=\\)\n�^\s*#if.*?(?<!\\)\n�#push�^\s*#endif.*?(?<!\\)\n�.*?\n��rootr rr>M�any�bool�Float�Timer�APLRes�Action�Handle�Pluginr	�TFCond�TFTeam�AdminId�GroupId�NetFlow�RayType�SDKType�UserMsg�DBResult�ExecType�FileType�Function�Identity�MoveType�PathType�PropType�RenderFx�SMCError�SortType�	AdminFlag�	EventHook�	MapChange�	MenuStyle�	ParamType�	SMCResult�	SortOrder�
CookieMenu�
DBBindType�
DBPriority�
DialogType�
MenuAction�
MenuSource�
PluginInfo�
RegexError�
RenderMode�
SDKLibrary�
SortFunc2D�FeatureType�KvDataTypes�QueryCookie�ReplySource�SDKCallType�TFClassType�ConVarBounds�CookieAccess�FileTimeMode�ImmunityType�OverrideRule�OverrideType�PluginStatus�
AdmAccessMode�
EventHookMode�
FeatureStatus�
PropFieldType�
SDKPassMethod�
TopMenuAction�
TopMenuObject�AdminCachePart�ListenOverride�NominateResult�TFResourceType�TopMenuPosition�CookieMenuAction�ConVarQueryResult�SDKFuncConfSource�TopMenuObjectType�TraceEntityFilter�ConVarQueryFinishedc���t|dd��|_t��|_|jr ddlm}|j�|��tj|fi|��dS)N�	sourcemodTr)�	FUNCTIONS)	r�smhighlighting�set�
_functions�#pygments.lexers._sourcemod_builtinsr��updater�__init__)�self�optionsr�s   �6/usr/lib/python3/dist-packages/pygments/lexers/pawn.pyr�zSourcePawnLexer.__init__ksz��*�7�+6��>�>����%�%�����	.�E�E�E�E�E�E��O�"�"�9�-�-�-���D�,�,�G�,�,�,�,�,�c#��K�tj||��D]H\}}}|tur2|jr+||jvr
t
j}n||jvrtj}|||fV��IdS)N)	r�get_tokens_unprocessedrr��SM_TYPESr�Typer��Builtin)r��text�index�token�values     r�r�z&SourcePawnLexer.get_tokens_unprocessedus������1�$��=�=�	&�	&��E�5�%���}�}��&�-���
�-�-� '�����$�/�1�1� $������%�%�%�%�%�	&�	&r�N)!�__name__�
__module__�__qualname__�__doc__�name�aliases�	filenames�	mimetypes�_ws�_ws1r�Preprocr�Single�	Multilinerr	�Charr
r>�Hex�Oct�Integerrrr��Constantr�Escape�tokensr�r�r��r�r�r
r
s$��������
�D��f�G���I�$�%�I�'�C�$�D�
�'�/�5�1�
�7�?�G�,�
�4�Z�*�
$�g�o�u�=�
�4�Z�#�
�w���8�
�D�M�
�T�N�
�d�O�
-�w�~�>�
,�g�.?�@�
�k�"�
�V�X�&�
D�f�k�R�
7���F�
-�v�|�<�
%�v�z�2�
��
�+�
�F�N�+�
!�8�,�
�[�)�B�CJ�
L����-�
�� 0�1�
�d�#�7
�<�6�6�"�
?���O�
�6�"�
�f��
�F�O�
����)�
�� 1�2�
����0�
�7�?�#�
�7�?�+�
�G�O�V�,�

�$�W�_�g�>�
&����@�
�w��
�[2�2�F�h?�?�?�H�(-�-�-�	&�	&�	&�	&�	&r�c�6�eZdZdZdZdgZgd�ZdgZdZdZ	de
jd	fd
e
jdfde	zd
ze
jd	fde	zdze
jdfdefdefdefde
j
fde
jfdefdedfdejfdejfdejfdejfdejfdejfdefdefdefd ejfd!ejfd"efgd#ed$fd%ejfd&efdefd'efgd(e
jfd)e
jfd*e
j
d$fd+e
jfd,e
jfde
jd$fgd-e
jd.fd/e
jd$fd0e
fgd1�Zd2�Zd3S)4rz:
    For Pawn source code.

    .. versionadded:: 2.0
    �Pawn�pawn)z*.pz*.pwnz*.incztext/x-pawnz (?:\s|//.*?\n|/[*][\w\W]*?[*]/)+rrrrrrrrrrrrz/(\\\n)?\*[\w\W]*?\*(\\\n)?/rrr r!r"r#r$r%r&r'r(z�(switch|case|default|const|new|static|char|continue|break|if|else|for|while|do|operator|enum|public|return|sizeof|tagof|state|goto)\br)r*r+r,r-r.r/r0r1r2r3r4r5r6r7r8r9r:c��d|vrdSdS)zvThis is basically C. There is a keyword which doesn't exist in C
        though and is nearly unique to this language.�tagofg{�G�z�?Nr�)r�s r��analyse_textzPawnLexer.analyse_text�s���d�?�?��4��?r�N)r�r�r�r�r�r�r�r�r�r�rr�rr�r�rr	r�r
r>r�r�r�rrr�r�rr�r�r�r�r�r�rr�s���������D��h�G�)�)�)�I���I�.�C�$�D�
�'�/�5�1�
�7�?�G�,�
�4�Z�*�
$�g�o�u�=�
�4�Z�#�
�w���8�
�D�M�
�T�N�
�d�O�
-�w�~�>�
,�g�.?�@�
�k�"�
�V�X�&�
D�f�k�R�
7���F�
-�v�|�<�
%�v�z�2�
��
�+�
�F�N�+�
!�8�,�
�[�)�9�:A�
C����-�
�� 0�1�
�d�#�7
�<�6�6�"�
?���O�
�6�"�
�f��
�F�O�
����)�
�� 1�2�
����0�
�7�?�#�
�7�?�+�
�G�O�V�,�

�$�W�_�g�>�
&����@�
�w��
�[2�2�F�h����r�N)r��pygments.lexerr�pygments.tokenrrrrrr	r
r�
pygments.utilr�__all__r
rr�r�r��<module>r�s����&�%�%�%�%�%���������������������&�&�&�&�&�&��k�
*��k&�k&�k&�k&�k&�j�k&�k&�k&�\I�I�I�I�I�
�I�I�I�I�Ir�