a
    lcy                     @   s   d Z ddlZddlmZmZmZmZmZmZm	Z	m
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mZ ddlmZ ddlmZmZ ddlmZ d	gZG d
d	 d	eZ dS )z
    pygments.lexers.ada
    ~~~~~~~~~~~~~~~~~~~

    Lexers for Ada family languages.

    :copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    N)Lexer
RegexLexerincludebygroupswordsusingthisdefault)get_bool_optget_list_opt)	TextCommentOperatorKeywordNameStringNumberPunctuationError)Scanner)KEYWORD_LISTBUILTIN_LIST)Modula2LexerAdaLexerc                   @   s  e Zd ZdZdZg dZg dZdgZej	ej
B Zdefdejfdefdejd	fd
eejeejdfdejfdeejefdeejedfdeejeejfdejfeeddejfdejfdejfdejdfdejdfdeejedfdeejeeeejfdejfdeejeeeejfeedddejfdefe d e d!d"ej!fd#eee"e#fd$efd%efd&efgd'e$j%fd(e$j&fd)e$j'fgd*eeej(fgd+ed,fd-ed.fd/ejd.fd0ej)fe d1gd2ejfd3ej)fd4efd-ed.fgd-ed.fd+ed5fd6ed5fd7ejfdejd8fd9ejd:fd;eejed.fe d1gd-ed.fd<eejeejfe d1gd=ejd.fe d1gd>ed.fe*d.gd?ed.fd@ed.fdAej+fdBefdCejfe d1gdDejfdEejfdFejd.fd-ed.fd+edGfdHej,fe d1gdIeej+eefdJefd?ed.fe d1gdKZ-dLS )Mr   z9
    For Ada source code.

    .. versionadded:: 1.3
    Ada)adaada95ada2005)z*.adbz*.adsz*.adaz
text/x-adaz[^\S\n]+z--.*?\nzfunction|procedure|entry
subprogramz(subtype|type)(\s+)(\w+)type_defztask|protectedz(subtype)(\s+)z
(end)(\s+)endz(pragma)(\s+)(\w+)z(true|false|null)\bz\b)suffixz,(and(\s+then)?|in|mod|not|or(\s+else)|rem)\bzgeneric|privatepackagezarray\b	array_defz(with|use)(\s+)importz(\w+)(\s*)(:)(\s*)(constant)z<<\w+>>z0(\w+)(\s*)(:)(\s*)(declare|begin|loop|for|while))prefixr!   z"[^"]*"	attributenumbersz'[^']'z(\w+)(\s*|[(,])z(<>|=>|:=|@|[\[\]]|[()|:;,.'])z
[*<>+=/&-]z\n+z[0-9_]+#[0-9a-f_\.]+#z[0-9_]+\.[0-9_]*z[0-9_]+z(')(\w+)z\()#popformal_part;r(   zis\bz"[^"]+"|\w+rootz(if|case|record|loop|select)z"[^"]+"|[\w.]+z\s+r)   z\[zwith|and|use)r(   r#   zrecord\b
record_defz(null record)(;)z(\w+)(\s+)(range)z
end recordz[\w.]+z\)z\]z\w+z,|:[^=]z(in|not|null|out|access)\bbodyzis\s+new|renamesispackage_instantiationz([\w.]+)z("[^"]+"|\w+)(\s+)(=>)z[\w.\'"])r+   r'   r&   r   r    r   r#   r,   r$   r)   r"   r/   N).__name__
__module____qualname____doc__namealiases	filenames	mimetypesre	MULTILINE
IGNORECASEflagsr   r   Singler   Declarationr   TypeReservedPreprocConstantr   r   r   Word	Namespacer   r   Labelr   r   r   Z	Characterr   r   r   HexFloatInteger	AttributeFunctionr	   VariableClasstokens rM   rM   O/var/www/html/django/DPS/env/lib/python3.9/site-packages/pygments/lexers/ada.pyr      s   



'



	

)!r3   r8   Zpygments.lexerr   r   r   r   r   r   r   r	   Zpygments.utilr
   r   Zpygments.tokenr   r   r   r   r   r   r   r   r   Zpygments.scannerr   Zpygments.lexers._ada_builtinsr   r   Zpygments.lexers.modula2r   __all__r   rM   rM   rM   rN   <module>   s   
(,