a
    ñ»j
  ã                   @   s^   d Z dgZddlZddlmZmZ ddlmZmZm	Z	m
Z
mZmZmZmZ G dd„ deƒZdS )aC  
    pygments.lexers.codeql
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexer for CodeQL query language.

    The grammar is originating from:
    https://github.com/github/vscode-codeql/blob/main/syntaxes/README.md

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
ÚCodeQLLexeré    N)Ú
RegexLexerÚwords)ÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚ
Whitespacec                   @   sì   e Zd ZdZddgZddgZg ZdZdZe	j
e	jB Zdefd	ejfd
ejdfeddd�ejfedddd�ejjfeddd�ejfdefdejfdejfdefdefdejfdejfdejfgdejfd
ejdfdejdfdejfgd œZd!S )"r   ÚCodeQLÚcodeqlÚqlz*.qlz*.qllz https://github.com/github/codeqlz2.19z\s+z//.*?\nz/\*úmultiline-comments)ÚmoduleÚimportÚclassZextendsZ
implementsÚ	predicateÚselectÚwhereÚfromÚasÚandÚorÚnotÚinÚifZthenÚelseÚexistsÚforallZ
instanceofÚprivater   ÚabstractÚcachedZexternalÚfinalZlibraryÚoverrideÚqueryz\b)ÚsuffixÚthisz\b\??:?)Úprefixr'   )ÚbooleanÚdateÚfloatÚintÚstringz"(\\\\|\\[^\\]|[^"\\])*"z[0-9]+\.[0-9]+z[0-9]+z<=|>=|<|>|=|!=|\+|-|\*|/z[.,;:\[\]{}()]+z@[a-zA-Z_]\w*z[A-Z][a-zA-Z0-9_]*z[a-z][a-zA-Z0-9_]*z[^*/]+z#pushz\*/z#popz[*/])Úrootr   N) Ú__name__Ú
__module__Ú__qualname__ÚnameÚaliasesÚ	filenamesÚ	mimetypesÚurlÚversion_addedÚreÚ	MULTILINEÚUNICODEÚflagsr   r   ÚSingleÚ	Multiliner   r   ÚBuiltinr   ÚPseudoÚTyper	   r
   ÚFloatÚIntegerr   r   ÚVariableÚClassÚtokens© rG   rG   ú<E:\soccer\ml_env\Lib\site-packages\pygments/lexers/codeql.pyr      sP   
úú	ÿÿþþÚ)

ü×)Ú__doc__Ú__all__r9   Zpygments.lexerr   r   Zpygments.tokenr   r   r   r   r	   r
   r   r   r   rG   rG   rG   rH   Ú<module>   s
   (