U
    `a[y                     @   sh   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 ddgZG dd deZG dd deZdS )	z
    pygments.lexers.verification
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Lexer for Intermediate Verification Languages (IVLs).

    :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerincludewords)CommentOperatorKeywordNameNumberPunctuation
WhitespaceBoogieLexerSilverLexerc                   @   s   e Zd ZdZdZdgZdgZdefdefdej	fdej
fd	ejd
fedddefedddejfedddejfeddefdefdefgdejfd	ejdfdejdfdejfgdejfgdZdS )r   z^
    For `Boogie <https://boogie.codeplex.com/>`_ source code.

    .. versionadded:: 2.1
    ZBoogieZboogiez*.bpl\n\s+//[/!](.*?)\n	//(.*?)\n/\*comment)axiombreakcallensureselseexistsfunctionforallif	invariantZmodifiesZ	procedurerequiresZthenvarwhile\bsuffix)Zconst)boolintrefnumbersz((>=|<=|:=|!=|==>|&&|\|\||[+/\-=>*<\[\]])([{}():;,.])z[a-zA-Z_]\w*[^*/]+#push\*/#pop[*/][0-9]+rootr   r'   N)__name__
__module____qualname____doc__namealiases	filenamesr   r   DocSingle	Multiliner   r   ZReservedTyper   r   r
   r   r	   Integertokens r>   r>   >/usr/lib/python3/dist-packages/pygments/lexers/verification.pyr      s:   


c                   @   s   e Zd ZdZdZdgZddgZdefdefdej	fd	ej
fd
ejdfedddefedddejfeddefdefdefgdejfd
ejdfdejdfdejfgdejfgdZdS )r   zk
    For `Silver <https://bitbucket.org/viperproject/silver>`_ source code.

    .. versionadded:: 2.2
    ZSilverZsilverz*.silz*.vprr   r   r   r   r   r   )7resulttrueZfalseZnullmethodr   Z	predicateZprogramZdomainr   r   ZreturnsZfieldZdefiner   r   r   ZfoldZunfoldZinhaleZexhalenewassertZassumeZgotor    r   Zelseifr   ZfreshZconstrainingZSeqSetZMultisetunionintersectionZsetminusZsubsetZ	unfoldinginoldr   r   ZaccZwildcardwriteZnoneepsilonZpermuniqueZapplypackageZfoldingZlabelZforpermr!   r"   )ZIntZPermZBoolZRefr'   z[!%&*+=|?:<>/\-\[\]]r(   z[\w$]\w*r)   r*   r+   r,   r-   r.   r/   N)r1   r2   r3   r4   r5   r6   r7   r   r   r8   r9   r:   r   r   r;   r   r   r
   r   r	   r<   r=   r>   r>   r>   r?   r   @   s8   




N)r4   Zpygments.lexerr   r   r   Zpygments.tokenr   r   r   r   r	   r
   r   __all__r   r   r>   r>   r>   r?   <module>   s
   
$-