HOME


Mini Shell 1.0
DIR: /snap/certbot/4482/lib/python3.12/site-packages/pyparsing/__pycache__/
Upload File :
Current File : //snap/certbot/4482/lib/python3.12/site-packages/pyparsing/__pycache__/unicode.cpython-312.pyc
�

�S�gv)���ddlZddlmZddlmZGd�d�ZeeeeefeefZ	Gd�d�Z
Gd�d	e
�Zy)
�N)�filterfalse)�Unionc��eZdZd�Zd�Zy)�_lazyclasspropertyc�V�||_|j|_|j|_y�N)�fn�__doc__�__name__)�selfr	s  ��/build/snapcraft-certbot-29b1212f749eeba2f1dece1adfe9a83a/parts/certbot/install/lib/python3.12/site-packages/pyparsing/unicode.py�__init__z_lazyclassproperty.__init__	s������z�z�������
�c�(����t|��t�d�r!t�fd��jddD��ri�_|j
j}|�jvr|j���j|<�j|S)N�_internc3�P�K�|]}�jt|dg�u���y�w)rN)r�getattr)�.0�
superclass�clss  �r
�	<genexpr>z-_lazyclassproperty.__get__.<locals>.<genexpr>s+�����.
��
�K�K�7�:�y�"�=�=�.
�s�#&�)�type�hasattr�any�__mro__rr	r)r�objr�attrnames  ` r
�__get__z_lazyclassproperty.__get__s�����;��s�)�C��s�I�&�#�.
�!�k�k�!�"�o�.
�+
��C�K��7�7�#�#���3�;�;�&�$(�G�G�C�L�C�K�K��!��{�{�8�$�$rN)r�
__module__�__qualname__rr�rr
rrs��$�
%rrc���eZdZUdZgZeed<edee	fd��Z
ede	fd��Zede	fd��Zede	fd��Z
ede	fd��Zede	fd	��Zede	fd
��Zed��Zy)
�unicode_seta�
    A set of Unicode characters, for language-specific strings for
    ``alphas``, ``nums``, ``alphanums``, and ``printables``.
    A unicode_set is defined by a list of ranges in the Unicode character
    set, in a class attribute ``_ranges``. Ranges can be specified using
    2-tuples or a 1-tuple, such as::

        _ranges = [
            (0x0020, 0x007e),
            (0x00a0, 0x00ff),
            (0x0100,),
            ]

    Ranges are left- and right-inclusive. A 1-tuple of (x,) is treated as (x, x).

    A unicode set can also be defined using multiple inheritance of other unicode sets::

        class CJK(Chinese, Japanese, Korean):
            pass
    �_ranges�returnc	���g}|jD]B}|turn8t|dd�D]&}|jt	|d|ddz���(�Dtd�t
|�D��S)Nr%r"r���rc3�2K�|]}t|����y�wr)�chr�r�cs  r
rz0unicode_set._chars_for_ranges.<locals>.<genexpr>?s����/��c�!�f�/�s�)rr$r�extend�range�sorted�set)r�ret�cc�rrs    r
�_chars_for_rangeszunicode_set._chars_for_ranges7ss�����+�+�	5�B��[� ���b�)�R�0�
5���
�
�5��A���2���
�3�4�
5�	5�
�/�c�#�h�/�/�/rc�h�djttj|j��S)z+all non-whitespace characters in this range�)�joinr�str�isspacer4�rs r
�
printableszunicode_set.printablesAs$���w�w�{�3�;�;��0E�0E�F�G�Grc�h�djttj|j��S)z'all alphabetic characters in this ranger6)r7�filterr8�isalphar4r:s r
�alphaszunicode_set.alphasF�$���w�w�v�c�k�k�3�+@�+@�A�B�Brc�h�djttj|j��S)z*all numeric digit characters in this ranger6)r7r=r8�isdigitr4r:s r
�numszunicode_set.numsKr@rc�4�|j|jzS)z)all alphanumeric characters in this range)r?rCr:s r
�	alphanumszunicode_set.alphanumsPs���z�z�C�H�H�$�$rc
��djttttj
|j��td�z��S)zVall characters in this range that are valid identifier characters, plus underscore '_'r6u�ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzªµºÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ_)r7r/r0r=r8�isidentifierr4r:s r
�
identcharszunicode_set.identcharsUsJ���w�w���F�3�+�+�S�-B�-B�C�D�����
�	
�		
rc��td�|jD��}djt|t|j�ztd�z��S)u�
        all characters in this range that are valid identifier body characters,
        plus the digits 0-9, and · (Unicode MIDDLE DOT)
        c3�HK�|]}d|zj�s�|���y�w)�_N)rGr+s  r
rz-unicode_set.identbodychars.<locals>.<genexpr>is$����
���q��0F�0F�0H�A�
�s�"�"r6u0123456789·)r0r4r7r/rH)r�identifier_charss  r
�identbodycharszunicode_set.identbodycharscsV���
��,�,�
�
���w�w��#�c�#�.�.�&9�9�C��<O�O�P�
�	
rc�H�ddlm}||j|j�S)z�
        a pyparsing Word expression for an identifier using this range's definitions for
        identchars and identbodychars
        r)�Word)�	pyparsingrOrHrM)rrOs  r
�
identifierzunicode_set.identifierps��	#��C�N�N�C�$6�$6�7�7rN)rr r!r
r%�UnicodeRangeList�__annotations__r�listr8r4r;r?rCrErHrMrQr"rr
r$r$s����*!#�G�
�"��0�$�s�)�0��0��H�3�H��H��C�s�C��C��C�S�C��C��%�#�%��%��
�3�
��
��

�s�

��

��8��8rr$c��eZdZUdZdej
fgZeed<Gd�de	�Z
Gd�de	�ZGd�d	e	�ZGd
�de	�Z
Gd�d
e	�ZGd�de	�ZGd�de	�ZGd�de	�ZGd�de	�ZeZGd�deee�ZGd�de	�ZGd�de	�ZGd�de	�ZGd�de	�Ze
ZeZeZeZeZeZeZeZ eZ!eZ"y )!�pyparsing_unicodezF
    A namespace class for defining common language unicode_sets.
    � r%c�"�eZdZUdZdgZeed<y)�(pyparsing_unicode.BasicMultilingualPlanez,Unicode set for the Basic Multilingual Plane)rWi��r%N�rr r!r
r%rRrSr"rr
�BasicMultilingualPlanerY�s��:��%
��!�	
rr[c�$�eZdZUdZddgZeed<y)�pyparsing_unicode.Latin1z/Unicode set for Latin-1 Unicode Character Range)rW�~)��r%NrZr"rr
�Latin1r]�s��=���%
��!�	
rrac�"�eZdZUdZdgZeed<y)�pyparsing_unicode.LatinAz/Unicode set for Latin-A Unicode Character Range)�ir%NrZr"rr
�LatinArc����=��%
��!�	
rrec�"�eZdZUdZdgZeed<y)�pyparsing_unicode.LatinBz/Unicode set for Latin-B Unicode Character Range)i�iOr%NrZr"rr
�LatinBrh�rfrric�$�eZdZUdZgd�Zeed<y)�pyparsing_unicode.Greekz.Unicode set for Greek Unicode Character Ranges)#)iBiE)ipiw)izi)i�i�)i�)i�i�)i�i�)i�i�)i&i*)i^)i`)ifij)ii)ii)i iE)iHiM)iPiW)iY)i[)i])i_i})i�i�)i�i�)i�i�)i�i�)i�i�)i�i�)i�i�)i)!)i'i')ie�)i@i�)i�)i�iE�)i��i��r%NrZr"rr
�Greekrk�s��<�$%
��!�$	
rrlc�$�eZdZUdZgd�Zeed<y)�pyparsing_unicode.Cyrillicz0Unicode set for Cyrillic Unicode Character Range))ii/)i�i�)i+)ix)i�-i�-)i@�ir�)it�i��)i.�i/�r%NrZr"rr
�Cyrillicrn�s��>�	%
��!�		
rroc�$�eZdZUdZgd�Zeed<y)�pyparsing_unicode.Chinesez/Unicode set for Chinese Unicode Character Range))i�.i�.)i�.i�.)i�1i�1)i4i�M)�Ni�)i�i�)i�im�)ip�i�)i�oi�o)i�i�)i�i;�)i@�iH�)ii֦)i�i4�)i@�i�)i �i��)i��i��)i�i�r%NrZr"rr
�Chineserq�s��=�%
��!�	
rrsc��eZdZdZGd�de�ZGd�de�ZGd�de�ZeZeZ	eZ
ejejzejzZy)	�pyparsing_unicode.Japanesez`Unicode set for Japanese Unicode Character Range, combining Kanji, Hiragana, and Katakana rangesc�$�eZdZUdZddgZeed<y)� pyparsing_unicode.Japanese.Kanjiz-Unicode set for Kanji Unicode Character Range)rri��)i0i?0r%NrZr"rr
�Kanjirw�s��;� � �)�G�%�
rrxc�$�eZdZUdZgd�Zeed<y)�#pyparsing_unicode.Japanese.Hiraganaz0Unicode set for Hiragana Unicode Character Range))iA0i�0)�0�0)i�0)ip�)i�)iP�iR�)i�r%NrZr"rr
�Hiraganarz�s��B�)�G�%�
rr}c�$�eZdZUdZgd�Zeed<y)�#pyparsing_unicode.Japanese.Katakanaz1Unicode set for Katakana  Unicode Character Range)	)r{i�0)r|i�0)i�1i�1)i�2i�2)ie�i��)i�)id�ig�)i�i�)i�r%NrZr"rr
�Katakanars��C�
)�G�%�

rr�N)rr r!r
r$rxr}r��漢字�カタカナ�ひらがなr%r"rr
�Japaneseru�sd��n�	�K�	�
	�{�
	�	�{�	�������
�M�M����
����
�	rr�c�$�eZdZUdZgd�Zeed<y)�pyparsing_unicode.Hangulz7Unicode set for Hangul (Korean) Unicode Character Range))ii�)i.0i/0)i11i�1)i2i2)i`2i{2)i~2)i`�i|�)i�i��)i��i��)i��i��)i��i��)i�i�)i�i�)i�i�)i�i�r%NrZr"rr
�Hangulr�s��E�%
��!�	
rr�c��eZdZdZy)�pyparsing_unicode.CJKzTUnicode set for combined Chinese, Japanese, and Korean (CJK) Unicode Character RangeN)rr r!r
r"rr
�CJKr�0s��brr�c�$�eZdZUdZddgZeed<y)�pyparsing_unicode.Thaiz,Unicode set for Thai Unicode Character Range)ii:)i?i[r%NrZr"rr
�Thair�3s��:���%
��!�	
rr�c�$�eZdZUdZgd�Zeed<y)�pyparsing_unicode.Arabicz.Unicode set for Arabic Unicode Character Range))ii)ii�)iir%NrZr"rr
�Arabicr�:s��<�%
��!�	
rr�c�$�eZdZUdZgd�Zeed<y)�pyparsing_unicode.Hebrewz.Unicode set for Hebrew Unicode Character Range)	)i�i�)i�i�)i�i�)i�i6�)i8�i<�)i>�)i@�iA�)iC�iD�)iF�iO�r%NrZr"rr
�Hebrewr�Bs��<�
%
��!�
	
rr�c�$�eZdZUdZddgZeed<y)�pyparsing_unicode.Devanagariz2Unicode set for Devanagari Unicode Character Range)i	i	)i�i��r%NrZr"rr
�
Devanagarir�Ps��@���%
��!�	
rr�N)#rr r!r
�sys�
maxunicoder%rRrSr$r[rarerirlrorsr�r��Koreanr�r�r�r�r��BMP�العربية�中文�кириллица�Ελληνικά�עִברִית�	日本語�	한국어�	ไทย�देवनागरीr"rr
rVrV{s���
���� �!�G�
��
��
�
��
�
��
�
��
�&
��&
�P
�;�
�
�+�
�.,
�;�,
�\
��
�(�F�c�g�x��c�
�{�
�
��
�
��
�
�[�
�!�C��N�
�F�!�����N��I��I��I�)�rrV)r��	itertoolsr�typingrrrT�tuple�intrRr$rVr"rr
�<module>r�sX���!��%�%�(��e�C��H�o�u�S�z�9�:�;��Y8�Y8�xg*��g*r