
    |e	                     X    d 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 dgZ G d de      Zy)a  
    pygments.lexers.sieve
    ~~~~~~~~~~~~~~~~~~~~~

    Lexer for Sieve file format.

    https://tools.ietf.org/html/rfc5228
    https://tools.ietf.org/html/rfc5173
    https://tools.ietf.org/html/rfc5229
    https://tools.ietf.org/html/rfc5230
    https://tools.ietf.org/html/rfc5232
    https://tools.ietf.org/html/rfc5235
    https://tools.ietf.org/html/rfc5429
    https://tools.ietf.org/html/rfc8580

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroups)CommentNameLiteralStringTextPunctuationKeyword
SieveLexerc                   b   e Zd ZdZdZddgZdgZdefdefde	j                  fd	 eej                  ej                        fd
ej                  fde	j                  fd eej"                  ej"                        fdej&                  fdej(                  fdefdej                  dfgdefdedfgdZy)r   z<
    Lexer for sieve format.

    .. versionadded:: 2.6
    Sievez*.sivz*.sievesievez\s+z[();,{}\[\]]z(?i)requirea  (?i)(:)(addresses|all|contains|content|create|copy|comparator|count|days|detail|domain|fcc|flags|from|handle|importance|is|localpart|length|lowerfirst|lower|matches|message|mime|options|over|percent|quotewildcard|raw|regex|specialuse|subject|text|under|upperfirst|upper|value)z(?i)(address|addflag|allof|anyof|body|discard|elsif|else|envelope|ereject|exists|false|fileinto|if|hasflag|header|keep|notify_method_capability|notify|not|redirect|reject|removeflag|setflag|size|spamtest|stop|string|true|vacation|virustest)z(?i)setz([0-9.]+)([kmgKMG])?z#.*$z/\*.*\*/z"[^"]*?"ztext:textz	[^.].*?\nz^\.z#pop)rootr   N)__name__
__module____qualname____doc__name	filenamesaliasesr	   r
   r   	Namespacer   r   TagBuiltinDeclarationr   Numberr   Single	Multiliner   tokens     7/usr/lib/python3/dist-packages/pygments/lexers/sieve.pyr   r      s   
 D)$IiG TNk* .
 dhh)+K \\	
   " %gnngnn57 ^^   XXvC#
J 6"[&)
K)Fr"   N)r   pygments.lexerr   r   pygments.tokenr   r   r   r   r	   r
   r   __all__r   r!   r"   r#   <module>r'      s3   & 0   .3 3r"   