o
    Ñ­jì  ã                   @   s‚   d Z ddlZddlmZmZmZmZ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dlmZ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-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚincludeÚbygroupsÚwordsÚusingÚthisÚdefault)ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuation)ÚKEYWORD_LISTÚBUILTIN_LISTÚAdaLexerc                   @   s  e Zd ZdZdZg d¢Zg d¢ZdgZdZd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d0fd1ejd0fd2ej+fe"d3ƒgd4ejfd5ej+fd6efd/ed0fgd/ed0fd-ed7fd8ed7fd9ejfdejd:fd;ejd<fd=eejeƒd0fe"d3ƒgd/ed0fd>eejeejƒfe"d3ƒgd?ejd0fe"d3ƒgd@ed0fe,d0ƒgdAed0fdBed0fdCej-fdDefdEejfe"d3ƒgdFejfdGejfdHejd0fd/ed0fd-edIfdJej.fe"d3ƒgdKeej-eeƒfdLefdAed0fe"d3ƒgdMœZ/dNS )Or   z
    For Ada source code.
    ÚAda)ÚadaÚada95Úada2005)z*.adbz*.adsz*.adaz
text/x-adazhttps://www.adaic.orgz1.3z[^\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)0Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚaliasesÚ	filenamesÚ	mimetypesÚurlÚversion_addedÚreÚ	MULTILINEÚ
IGNORECASEÚflagsr	   r
   ÚSingler   ÚDeclarationr   ÚTypeÚReservedÚPreprocÚConstantr   r   r   ÚWordÚ	Namespacer   r   ÚLabelr   r   r   Ú	Characterr   r   r   ÚHexÚFloatÚIntegerÚ	AttributeÚFunctionr   ÚVariableÚClassÚtokens© rJ   rJ   úP/var/www/html/CropPilot/venv/lib/python3.10/site-packages/pygments/lexers/ada.pyr      sÖ    
ÿ
ÿ

ÿÿÿÿÜ'ýÿ
ûü

øý
þüú	
ù
ü
š)r-   r4   Úpygments.lexerr   r   r   r   r   r   r   Úpygments.tokenr	   r
   r   r   r   r   r   r   Úpygments.lexers._ada_builtinsr   r   Ú__all__r   rJ   rJ   rJ   rK   Ú<module>   s    
$(