U
    luf                     @   sZ   d Z ddlmZmZmZ ddlmZmZmZm	Z	m
Z
mZmZmZ dgZG dd deZdS )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                   @   s   e Zd ZdZdZdZddgZddgZdgZde	fd	e
jfd
ejfdejfdejfedededdefdefg
de
fde
fgedddefgdejfdefdefedddejfededddejjfgeddddejfd ejfgd!Zd"S )#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
    ZMesonzhttps://mesonbuild.com/mesonzmeson.buildzmeson_options.txtztext/x-mesonz#.*?$z'''.*'''z[1-9][0-9]*z0o[0-7]+z0x[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endifZforeachZ
endforeachbreakcontinuez\b)suffixz(in|and|or|not)\bz (\*=|/=|%=|\+]=|-=|==|!=|\+|-|=)z[\[\]{}:().,?])truefalsebuiltins)r   Zbuild_machineZhost_machineZtarget_machine)2Zadd_global_argumentsZadd_global_link_argumentsZadd_languagesZadd_project_argumentsZadd_project_link_argumentsZadd_test_setupassertZ	benchmarkZboth_librariesZbuild_targetZconfiguration_dataZconfigure_fileZcustom_targetZdeclare_dependency
dependencyZdisablerenvironmenterror
executablefilesZfind_libraryZfind_program	generator
get_optionZget_variableZinclude_directoriesinstall_datainstall_headersZinstall_manZinstall_subdirZis_disablerZis_variablejarZ
join_pathslibrarymessageprojectrangerun_commandZset_variableZshared_libraryZshared_moduleZstatic_librarysubdirZsubdir_doneZ
subprojectsummarytestZvcs_tagwarningz(?<!\.))prefixr   z(?<!\.)import\b)rootr   r   r   r   N)__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypesr   r   Singler   ZIntegerOctZHexr   r   r   r   r
   r	   Wordr   ConstantVariableZMagicZBuiltin	Namespacetokens rB   rB   9/tmp/pip-unpacked-wheel-7eq1ciah/pygments/lexers/meson.pyr      s\   

456N)r5   Zpygments.lexerr   r   r   Zpygments.tokenr   r   r   r   r	   r
   r   r   __all__r   rB   rB   rB   rC   <module>   s   
(