File: //opt/alt/python311/lib/python3.11/site-packages/pygments/lexers/__pycache__/dalvik.cpython-311.pyc
�
�;f� � �p � d Z ddlZddlmZmZmZ ddlmZmZm Z m
Z
mZmZm
Z
mZ dgZ G d� de� � ZdS )z�
pygments.lexers.dalvik
~~~~~~~~~~~~~~~~~~~~~~
Pygments lexers for Dalvik VM-related languages.
:copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� N)�
RegexLexer�include�bygroups)�Keyword�Text�Comment�Name�String�Number�Punctuation�
Whitespace�
SmaliLexerc �� � e Zd ZdZdZdZdgZdgZdgZdZ e
d� � e
d � � e
d
� � e
d� � e
d� � e
d
� � e
d� � e
d� � e
d� � e
d� � e
d� � e
d� � gd eee
� � fd eee
ee
� � fd eee
ee
� � fgde
fgdefdefgdej fd eee� � fgdefdej fdej fdej fgd eeej e� � fgd!ej fd" eeej e� � fgd#ej fgd$ ee
j eej e� � fgd%efd&efgd'e
j fgd(efgd)�
Zd*� Zd+S ),r z7
For Smali (Android/Dalvik) assembly
code.
�Smalizhttp://code.google.com/p/smali/�smaliz*.smaliz
text/smaliz1.6�comment�label�field�method�class� directive�access-modifier�instruction�literal�punctuation�type�
whitespacez�^([ \t]*)(\.(?:class|super|implements|field|subannotation|annotation|enum|method|registers|locals|array-data|packed-switch|sparse-switch|catchall|catch|line|parameter|local|prologue|epilogue|source))zq^([ \t]*)(\.end)( )(field|subannotation|annotation|method|array-data|packed-switch|sparse-switch|parameter|local)z^([ \t]*)(\.restart)( )(local)z�(public|private|protected|static|final|synchronized|bridge|varargs|native|abstract|strictfp|synthetic|constructor|declared-synchronized|interface|enum|annotation|volatile|transient)z\nz\s+z\b[vp]\d+\bz(\b[a-z][A-Za-z0-9/-]+)(\s+)z".*"z0x[0-9A-Fa-f]+t?z [0-9]*\.[0-9]+([eE][0-9]+)?[fd]?z[0-9]+L?z(\$?\b)([\w$]*)(:)z
<(?:cl)?init>z(\$?\b)([\w$]*)(\()z:\w+z(L)((?:[\w$]+/)*)([\w$]+)(;)z->z[{},():=.-]z[ZBSCIJFDV\[]+z#.*?\n)
�rootr r r r r r r r r r r r c �� � d}t j d| t j � � r*|dz
}t j d| t j � � r|dz
}t j d| t j � � r|dz
}|S )Nr z
^\s*\.class\sg �?z�\b((check-cast|instance-of|throw-verification-error)\b|(-to|add|[ais]get|[ais]put|and|cmpl|const|div|if|invoke|move|mul|neg|not|or|rem|return|rsub|shl|shr|sub|ushr)[-/])|{|}g333333�?a> (\.(catchall|epilogue|restart local|prologue)|\b(array-data|class-change-error|declared-synchronized|(field|inline|vtable)@0x[0-9a-fA-F]|generic-error|illegal-class-access|illegal-field-access|illegal-method-access|instantiation-error|no-error|no-such-class|no-such-field|no-such-method|packed-switch|sparse-switch))\bg333333�?)�re�search� MULTILINE)�text�scores �I/opt/alt/python311/lib/python3.11/site-packages/pygments/lexers/dalvik.py�analyse_textzSmaliLexer.analyse_textm s� � ���
�9�%�t�R�\�:�:� ��S�L�E��y� 3� 59�"�,�H� H�
� ����
�9� 8� :>�r�|�
M� M� �
�S�L�E��� N)�__name__�
__module__�__qualname__�__doc__�name�url�aliases� filenames� mimetypes�
version_addedr r r
r r �Builtinr r
r �Hex�Float�Integerr �Variable�Function�Label�Type�Classr �tokensr&