�
|�e� � �` � d Z ddlmZmZmZ ddlmZmZmZm Z m
Z
mZmZm
Z
dgZ G d� de� Zy)z�
pygments.lexers.pony
~~~~~~~~~~~~~~~~~~~~
Lexers for Pony and related languages.
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�bygroups�words)�Text�Comment�Operator�Keyword�Name�String�Number�Punctuation� PonyLexerc �� � e Zd ZdZdZdgZdgZdZdefdefde j fd e j d
fdej fded
fdej fdef edd�� ej$ fdef edd�� efd eee� dfd eee� df edd�� ej, j. fdej. fdej2 fdej4 fdej6 fdej, fdefd efged!z eeeej8 � d"fged#z eeeej: � d"fgd$e j fd e j d%fd&e j d"fd'e j fgded"fd(efd)efgd*�Zy+),r z:
For Pony source code.
.. versionadded:: 2.4
�Pony�ponyz*.ponyz(iso|trn|ref|val|box|tag)z\nz[^\S\n]+z//.*\nz/\*�nested_commentz"""(?:.|\n)*?"""�"�stringz\'.*\'z=>|[]{}:().~;,|&!^?[]) � addressof�and�as�consume�digestof�is�isnt�not�orz\b)�suffixz!=|==|<<|>>|[-+/*%=<>])(�box�break�
compile_error�compile_intrinsic�continue�do�else�elseif�embed�end�error�for�if�ifdef�in�iso�lambda�let�match�object�recover�ref�repeat�return�tag�then�this�trn�try�until�use�var�val�where�while�withz#anyz#readz#sendz#sharez<(actor|class|struct|primitive|interface|trait|type)((?:\s)+)�typenamez(new|fun|be)((?:\s)+)�
methodname)�I8�U8�I16�U16�I32�U32�I64�U64�I128�U128�ILong�ULong�ISize�USize�F32�F64�Bool�Pointer�None�Any�Arrayr �Iteratorz
_?[A-Z]\w*z (\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+z0x[0-9a-fA-F]+z\d+z(true|false)\bz_\d*z_?[a-z][\w\']*z?((?:\s)*)(_?[A-Z]\w*)z#popz?((?:\s)*)(_?[a-z]\w*)z[^*/]+z#pushz\*/z[*/]z\\"z[^\\"]+)�rootrC rD r r N)�__name__�
__module__�__qualname__�__doc__�name�aliases� filenames�_capsr r �Single� Multiliner �Doc�Charr
r r �Wordr r r
�Builtin�Typer �Float�Hex�Integer�Class�Function�tokens� � �6/usr/lib/python3/dist-packages/pygments/lexers/pony.pyr r s � �� �D��h�G��
�I�(�E� �D�M�
�$��
����'�
�W�&�&�(8�9�
�&�*�*�-�
�6�8�$�
����$�
%�{�3�
� � �� �]�]�
�
'��1�
� E� �� �
� M�
�g�t�
$�j�
2�
%�x���'>��M�
� �
�� �\�\�
�
�
� �D�I�I�&�
0�&�,�,�?�
��
�
�+�
�V�^�^�$�
����-�
�d�O�
��%�Q)
�V �.�
.�
�g�t�T�Z�Z�
0�&�
:�
�
�.�
.�
�g�t�T�]�]�
3�V�
=�
�
��)�)�*�
�W�&�&��0�
�W�&�&��/�
�g�'�'�(�
� �6�6�"�
�V��
�� �
�s>�Frr N)r_ �pygments.lexerr r r �pygments.tokenr r r r r
r r r
�__all__r rq rr rs �<module>rw s8 ��� 7� 6�� � � �-��K�
� Krr |