§
    ¸)ýfò  ã                   óV   — d Z ddlZddlZ G d„ de¦  «        Z G d„ dee¬¦  «        ZdS )z‰A module for creating groups of constants. This is similar to the enum
module, but enum is not available in Python 2's standard library.
é    Nc                   ó@   ‡ — e Zd ZdZˆ fd„Zd„ Zd„ Zd„ Zd„ Zd„ Z	ˆ xZ
S )Ú_MetaConstantsGroupzMA meta-class which handles the creation and behavior of ConstantsGroups.
    c                 ó2  •— |dk    r+t          t          | ¦  «                             | |||¦  «        S t          ¦   «         }|                     ¦   «         D ]†\  }}|                     d¦  «        s*t          |t          ¦  «        st          |t          ¦  «        rŒE| 	                    |¦  «         t          |t          j        ¦  «        rt          |¦  «        ||<   Œ‡t          |¦  «        |d<   t          t          | ¦  «                             | |||¦  «        S )z9Discover constants and create a new ConstantsGroup class.ÚConstantsGroupÚ_Ú_all)Úsuperr   Ú__new__ÚlistÚitemsÚ
startswithÚ
isinstanceÚclassmethodÚstaticmethodÚappendÚtypesÚFunctionTypeÚtuple)ÚmetaclsÚclsÚbasesÚ	classdictÚallConstantsÚkeyÚvalueÚ	__class__s          €úu/home/blender/git/blender-v430/install_release/4.3/python/lib/python3.11/site-packages/pxr/UsdUtils/constantsGroup.pyr
   z_MetaConstantsGroup.__new__#   s  ø€ ð
 Ð"Ò"Ð"ÝÕ,¨gÑ6Ô6×>Ò>¸wÈÈUÐT]Ñ^Ô^Ð^õ ‘v”vˆØ#Ÿ/š/Ñ+Ô+ð 	9ð 	9‰JˆC�Ø—’˜sÑ#Ô#ð 9¥z°%½Ñ'EÔ'Eð 9Ý˜u¥lÑ3Ô3ð9ð ð ×#Ò# EÑ*Ô*Ð*õ ˜e¥UÔ%7Ñ8Ô8ð 9Ý%1°%Ñ%8Ô%8�I˜c‘Nøõ " ,Ñ/Ô/ˆ	�&Ñõ Õ(¨'Ñ2Ô2×:Ò:¸7ÀCÈÐPYÑZÔZÐZó    c                 ó    — t          d¦  «        ‚)z<Prevent modification of properties after a group is created.ú#Constant groups cannot be modified.©ÚAttributeError)r   Únamer   s      r   Ú__setattr__z_MetaConstantsGroup.__setattr__C   ó   € åÐBÑCÔCÐCr   c                 ó    — t          d¦  «        ‚)z8Prevent deletion of properties after a group is created.r    r!   )r   r#   s     r   Ú__delattr__z_MetaConstantsGroup.__delattr__G   r%   r   c                 ó*   — t          | j        ¦  «        S )z)Get the number of constants in the group.)Úlenr   ©Úselfs    r   Ú__len__z_MetaConstantsGroup.__len__K   s   € å�4”9‰~Œ~Ðr   c                 ó   — || j         v S )z(Check if a constant exists in the group.)r   )r+   r   s     r   Ú__contains__z _MetaConstantsGroup.__contains__O   s   € à˜œÐ"Ð#r   c                 ó*   — t          | j        ¦  «        S )z(Iterate over each constant in the group.)Úiterr   r*   s    r   Ú__iter__z_MetaConstantsGroup.__iter__S   s   € å�D”I‰ŒÐr   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r
   r$   r'   r,   r.   r1   Ú__classcell__)r   s   @r   r   r      s™   ø€ € € € € ðð ð[ð [ð [ð [ð [ð@Dð Dð DðDð Dð Dðð ð ð$ð $ð $ðð ð ð ð ð ð r   r   c                   ó   — e Zd ZdZd„ ZdS )r   z_The base constant group class, intended to be inherited by actual groups
    of constants.
    c                 ó    — t          d¦  «        ‚)Nz)ConstantsGroup objects cannot be created.)Ú	TypeError)r   ÚargsÚkwargss      r   r
   zConstantsGroup.__new__]   s   € ÝÐCÑDÔDÐDr   N)r2   r3   r4   r5   r
   © r   r   r   r   Y   s2   € € € € € ðð ðEð Eð Eð Eð Er   r   )Ú	metaclass)r5   Úsysr   Útyper   Úobjectr   r<   r   r   ú<module>rA      s•   ðð2ð ð €
€
€
Ø €€€ð6ð 6ð 6ð 6ð 6˜$ñ 6ô 6ð 6ðtEð Eð Eð Eð E�VÐ':ð Eñ Eô Eð Eð Eð Er   