+
     h   c                   s>    R t ^ RIHt ^ RIHt R t ! R R]4      tR# )z7Contains _ExtensionDict class to represent extensions.
)type_checkers)FieldDescriptorc           	     s   \        V\        4      '       g   \        RV,          4      hVP                  '       g   \        RVP                  ,          4      hVP
                  '       g   \        RVP                  ,          4      hVP
                  V P                  JdK   \        RVP                  : RVP
                  P                  : RV P                  P                  : R24      hR# )	z0Verify that the given extension handle is valid.z3HasExtension() expects an extension handle, got: %sz"%s" is not an extension.z""%s" is missing a containing_type.zExtension "z" extends message type "z ", but this message is of type "z".N)
isinstancer   ZKeyErroris_extension	full_nameZcontaining_typeZ
DESCRIPTOR)Zmessageextension_handle   &&L/usr/lib/python3.14/site-packages/google/protobuf/internal/extension_dict.py_VerifyExtensionHandler   &   s     
$o	6	6
H#$ % % 
	&	&	&
.1A1K1KK
LL		)	)	)
7%//0 1 1 %%W-?-??
$..$44>>&&00	2 3 3 @    c                   sl   a  ] tR t^?t o RtR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tRtV tR# )_ExtensionDictzDict-like container for Extension fields on proto instances.

Note that in all cases we expect extension handles to be
FieldDescriptors.
c                s    Wn         R# )zR
Args:
  extended_message: Message instance for which we are the Extensions dict.
N_extended_message)selfZextended_messager   r   __init__Z_ExtensionDict.__init__G   s
    
 .r	   c                s^   \        V P                  V4       V P                  P                  P                  V4      pVe   V# VP                  \
        P                  8X  d   VP                  V P                  4      pMVP                  \
        P                  8X  d   VP                  p\        VR4      '       g&   V P                  P                  P                  V4       \        VP                  RR4      '       g/   Q RVP                  : RVP                  P                  : R24       hVP                  P!                  4       p VP#                  V P                  P$                  4       MVP(                  # V P                  P                  P+                  W4      pV#   \&         d     L4i ; i)z8Returns the current value of the given extension handle.N_concrete_classz-Uninitialized concrete class found for field z (message type Z))r   r   _fieldsgetlabelr   LABEL_REPEATEDZ_default_constructorcpp_typeCPPTYPE_MESSAGEmessage_typeZhasattrZ_FACTORYZGetPrototypeZgetattrr   r   Z_SetListenerZ_listener_for_childrenZReferenceErrorZdefault_valueZ
setdefault)r   r   Zresultr   s   &&  r   __getitem__Z_ExtensionDict.__getitem__N   sn    4113CD##++//0@AFm!?!??44T5K5KLf		"	"o&E&E	E%22l\#455''44\B%224EtLL 7''**4467L  ,,<<>fD22IIJ +++ ##++66"F M!  s   %F F,+F,c                sP   \        WP                  4      '       g   R # V P                  P                  4       pVP                  P                  4       pV Uu. uF  qDP                  '       g   K  VNK  	  ppV Uu. uF  qDP                  '       g   K  VNK  	  ppW#8H  # u upi u upi )F)r   Z	__class__r   
ListFieldsr   )r   otherZ	my_fieldsZother_fieldsfields   &&   r   __eq__Z_ExtensionDict.__eq__w   s    e^^,,&&113I**557L %.DI51C1CIID'3J|e7I7IEE|LJ$$ EJs   B.B:B#B#c                s    W8X  * # N )r   r   r   r   __ne__Z_ExtensionDict.__ne__   s    r	   c                s    V P                   P                  4       pV Uu. uF  q"^ ,          P                  '       g   K  VNK!  	  pp\        V4      # u upi )    )r   r   r   Zlen)r   Zfieldsr   Zextension_fieldss   &   r   __len__Z_ExtensionDict.__len__   sI    ##..0F+1K6%1X5J5J6K   Ls
   AAc                s    \        R 4      h)zunhashable object)	TypeErrorr      &r   __hash__Z_ExtensionDict.__hash__   s    
'
((r	   c                s   \        V P                  V4       VP                  \        P                  8X  g    VP
                  \        P                  8X  d   \        RVP                  ,          4      h\        P                  ! V4      pVP                  V4      V P                  P                  V&   V P                  P                  4        R# )zdIf extension_handle specifies a non-repeated, scalar extension
field, sets the value of that field.
zKCannot assign to extension "%s" because it is a repeated or composite type.N)r   r   r   r   r   r   r   r!   r   r    ZGetTypeCheckerZ
CheckValuer   Z	_Modified)r   r   valueZtype_checkers   &&& r   __setitem__Z_ExtensionDict.__setitem__   s    
 4113CD/"@"@@!!_%D%DD.889: : !//0@AL 	& 	""#34$$&r	   c                s<    V P                   P                  V4       R # r   )r   ZClearExtension)r   r   r   r   __delitem__Z_ExtensionDict.__delitem__   s    ))*:;r	   c                N    V P                   P                  P                  VR4      # )zTries to find a known extension with the specified name.

Args:
  name: Extension full name.

Returns:
  Extension field descriptor.
N)r   Z_extensions_by_namer   )r   Znamer   r   _FindExtensionByNameZ#_ExtensionDict._FindExtensionByName   s#     !!5599$EEr	   c                r(   )zTries to find a known extension with the field number.

Args:
  number: Extension field number.

Returns:
  Extension field descriptor.
N)r   Z_extensions_by_numberr   )r   Znumberr   r   _FindExtensionByNumberZ%_ExtensionDict._FindExtensionByNumber   s#     !!77;;FDIIr	   c                sD    R  V P                   P                  4        4       # )c              3   sj   "   T F)  pV^ ,          P                   '       g   K  V^ ,          x  K+  	  R# 5i)r   N)r   )Z.0Zfs   & r   Z	<genexpr>Z*_ExtensionDict.__iter__.<locals>.<genexpr>   s,      "=Qt   AaDD=s   33)r   r   r"   r#   r   __iter__Z_ExtensionDict.__iter__   s"    "$00;;= " "r	   c                s   \        V P                  V4       WP                  P                  9  d   R # VP                  \        P
                  8X  d/   \        V P                  P                  P                  V4      4      # VP                  \        P                  8X  d>   V P                  P                  P                  V4      pVRJ;'       d    VP                  # R# )FNT)r   r   r   r   r   r   Zboolr   r   r   Z_is_present_in_parent)r   r   r%   s   && r   __contains__Z_ExtensionDict.__contains__   s    4113CD55===!?!??$((00445EFGG  O$C$CC$$,,001ABe$>>5#>#>>r	   r   N)Z__name__Z
__module__Z__qualname__Z__firstlineno____doc__r   r   r   r   r    r$   r&   r'   r)   r*   r+   r,   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r   r
   r
   ?   sN     .'R%!)'*<	F	J"
 r	   r
   N)r-   Zgoogle.protobuf.internalr    Zgoogle.protobuf.descriptorr   r   Zobjectr
   r   r	   r   <module>r.      s%   > 3 632VV Vr	   