File: //lib/python3/dist-packages/pygments/lexers/__pycache__/sieve.cpython-311.pyc
�
�E�c� � �` � d Z ddlmZmZ ddlmZmZmZmZm Z m
Z
mZ dgZ G d� de� � Z
dS )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-2022 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�bygroups)�Comment�Name�Literal�String�Text�Punctuation�Keyword�
SieveLexerc
� � e Zd ZdZdZddgZdgZdefdefde j
fd eej
ej
� � fd
ej fde j fd eej ej � � fd
ej fdej fdefdej
dfgdefdedfgd�ZdS )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"[^"]*?"ztext:�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��i�G� �T�N�
�k�*�
�
�
�
�.�
�X�d�h���
)�
)�
+�K� �\�
�
�
�
�
"� %�
�X�g�n�g�n�
5�
5�
7� �
�^�
�
�
�
�
� �
�
� �
�X�v�
�C#
�J �6�"�
�[�&�)�
�K)� )�F�F�Fr"