�
|�e� � �` � d Z ddlmZmZmZ ddlmZmZmZm Z m
Z
mZmZm
Z
dgZ G d� de� Zy)z�
pygments.lexers.meson
~~~~~~~~~~~~~~~~~~~~~
Pygments lexer for the Meson build system
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�words�include)�Comment�Name�Number�Punctuation�Operator�Keyword�String�
Whitespace�
MesonLexerc �� � e Zd ZdZdZdZddgZddgZdgZde fd e
j fd
ej fdej fdej f ed
� ed� ed� defdefg
de
fde
fg edd�� efgdej, fdefdef edd�� ej0 f ed� edd�� ej2 j4 fg eddd�� ej6 fd ej8 fgd!�Zy")#r a] Meson language lexer.
The grammar definition use to transcribe the syntax was retrieved from
https://mesonbuild.com/Syntax.html#grammar for version 0.58.
Some of those definitions are improperly transcribed, so the Meson++
implementation was also checked: https://github.com/dcbaker/meson-plus-plus.
.. versionadded:: 2.10
�Mesonzhttps://mesonbuild.com/�mesonzmeson.buildzmeson_options.txtztext/x-mesonz#.*?$z'''.*'''z[1-9][0-9]*z0o[0-7]+z0x[a-fA-F0-9]+�string�keywords�exprz[a-zA-Z_][a-zA-Z_0-9]*z\s+z([']{3}([']{0,2}([^\\']|\\(.|\n)))*[']{3}z'.*?(?<!\\)(\\\\)*?')�if�elif�else�endif�foreach�
endforeach�break�continuez\b)�suffixz(in|and|or|not)\bz (\*=|/=|%=|\+]=|-=|==|!=|\+|-|=)z[\[\]{}:().,?])�true�false�builtins)r �
build_machine�host_machine�target_machine)2�add_global_arguments�add_global_link_arguments�
add_languages�add_project_arguments�add_project_link_arguments�add_test_setup�assert� benchmark�both_libraries�build_target�configuration_data�configure_file�
custom_target�declare_dependency�
dependency�disabler�environment�error�
executable�files�find_library�find_program� generator�
get_option�get_variable�include_directories�install_data�install_headers�install_man�install_subdir�is_disabler�is_variable�jar�
join_paths�library�message�project�range�run_command�set_variable�shared_library�
shared_module�static_library�subdir�subdir_done�
subproject�summary�test�vcs_tag�warningz(?<!\.))�prefixr z(?<!\.)import\b)�rootr r r r N)�__name__�
__module__�__qualname__�__doc__�name�url�aliases� filenames� mimetypesr r �Singler �Integer�Oct�Hexr r r
r r r
�Wordr �Constant�Variable�Magic�Builtin� Namespace�tokens� � �7/usr/lib/python3/dist-packages/pygments/lexers/meson.pyr r s~ � �� �D�
#�C��
�&�G�� 3�4�I�� �I� �w��
�&�-�-�(�
�V�^�^�,�
�&�*�*�%�
��
�
�+��H���J���F�O�
&��-�
�Z� �
� 9�&�A�
$�f�-�
�
� � �
!� #*�
+�
� "�8�=�=�1�
0�(�;�
��,�
�$�U�
3�W�5E�5E�F��J��
� � �
!� #'�-�-�"5�"5�
7�
� � 3�h %��k5!�j #'�,�,�k5
0�l ����0�q9
�Yf�Frm N)r[ �pygments.lexerr r r �pygments.tokenr r r r r
r r r
�__all__r rl rm rn �<module>rr s8 ��� 6� 5� � � � �.��z�� zrm |