File: //opt/alt/python311/lib/python3.11/site-packages/pygments/lexers/__pycache__/sieve.cpython-311.pyc
�
�;f� � �` � 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-2024 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�bygroups)�Comment�Name�Literal�String�Text�Punctuation�Keyword�
SieveLexerc
� � e Zd ZdZdZddgZdgZdZdZde fd e
fd
ej fd e
ej ej � � fdej fd
ej fd e
ej ej � � fdej fdej fdefdej dfgdefde
dfgd�ZdS )r z!
Lexer for sieve format.
�Sievez*.sivz*.sieve�sievez=https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)z2.6z\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�aliases�url�
version_addedr r
r � Namespacer r �Tag�Builtin�Declarationr �Numberr �Single� Multiliner �tokens� � �H/opt/alt/python311/lib/python3.11/site-packages/pygments/lexers/sieve.pyr r s � � � � � �� � �D��)�$�I��i�G�
I�C��M� �T�N�
�k�*�
�
�
�
�.�
�X�d�h���
)�
)�
+�K� �\�
�
�
�
�
"� %�
�X�g�n�g�n�
5�
5�
7� �
�^�
�
�
�
�
� �
�
� �
�X�v�
�C#
�J �6�"�
�[�&�)�
�K)� )�F�F�Fr$ N)r �pygments.lexerr r �pygments.tokenr r r r r r
r �__all__r r# r$ r% �<module>r) s� ��� �&