zmc
2023-12-22 9fdbf60165db0400c2e8e6be2dc6e88138ac719a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
U
£ý°dÐ!ã@s8dZddlmZddlmZdd„ZGdd„deƒZdS)    z7Contains _ExtensionDict class to represent extensions.
é)Ú type_checkers)ÚFieldDescriptorcCsjt|tƒstd|ƒ‚|js*td|jƒ‚|js>td|jƒ‚|j|jk    rftd|j|jj|jjfƒ‚dS)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.zKExtension "%s" extends message type "%s", but this message is of type "%s".N)Ú
isinstancerÚKeyErrorÚ is_extensionÚ    full_nameZcontaining_typeZ
DESCRIPTOR)ÚmessageÚextension_handle©r
ú^d:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\google/protobuf/internal/extension_dict.pyÚ_VerifyExtensionHandle&s"
ÿÿ þþr c@speZdZdZdd„Zdd„Zdd„Zdd    „Zd
d „Zd d „Z    dd„Z
dd„Z dd„Z dd„Z dd„Zdd„ZdS)Ú_ExtensionDictzDict-like container for Extension fields on proto instances.
 
  Note that in all cases we expect extension handles to be
  FieldDescriptors.
  cCs
||_dS)z^
    Args:
      extended_message: Message instance for which we are the Extensions dict.
    N)Ú_extended_message)ÚselfZextended_messager
r
r Ú__init__Gsz_ExtensionDict.__init__cCsÜt|j|ƒ|jj |¡}|dk    r&|S|jtjkr@| |j¡}nˆ|jtj    krÂ|j
}t |dƒsj|jj   |¡t|j
ddƒsŽtd|j|j
jfƒ‚|j
 ¡}z| |jj¡WqÈtk
r¾YqÈXn|jS|jj ||¡}|S)z8Returns the current value of the given extension handle.NÚ_concrete_classzAUninitialized concrete class found for field %r (message type %r))r rÚ_fieldsÚgetÚlabelrÚLABEL_REPEATEDZ_default_constructorÚcpp_typeÚCPPTYPE_MESSAGEÚ message_typeÚhasattrZ_FACTORYZ GetPrototypeÚgetattrÚAssertionErrorrrZ _SetListenerZ_listener_for_childrenÚReferenceErrorÚ default_valueÚ
setdefault)rr    Úresultrr
r
r Ú __getitem__Ns8   
ÿÿÿ
ÿz_ExtensionDict.__getitem__cCsHt||jƒsdS|j ¡}|j ¡}dd„|Dƒ}dd„|Dƒ}||kS)NFcSsg|]}|jr|‘qSr
©r©Ú.0Úfieldr
r
r Ú
<listcomp>sz)_ExtensionDict.__eq__.<locals>.<listcomp>cSsg|]}|jr|‘qSr
r!r"r
r
r r%€s)rÚ    __class__rÚ
ListFields)rÚotherZ    my_fieldsZ other_fieldsr
r
r Ú__eq__ws 
 
z_ExtensionDict.__eq__cCs
||k S©Nr
)rr(r
r
r Ú__ne__„sz_ExtensionDict.__ne__cCs |j ¡}dd„|Dƒ}t|ƒS)NcSsg|]}|djr|‘qS)rr!r"r
r
r r%Šs
z*_ExtensionDict.__len__.<locals>.<listcomp>)rr'Úlen)rÚfieldsZextension_fieldsr
r
r Ú__len__‡s
z_ExtensionDict.__len__cCs tdƒ‚dS)Nzunhashable object)Ú    TypeError©rr
r
r Ú__hash__sz_ExtensionDict.__hash__cCs\t|j|ƒ|jtjks$|jtjkr2td|jƒ‚t     
|¡}|  |¡|jj |<|j  ¡dS)zlIf 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 rrrrrrr/rrZGetTypeCheckerZ
CheckValuerZ    _Modified)rr    ÚvalueZ type_checkerr
r
r Ú __setitem__”s  
ÿÿÿ
ÿ
z_ExtensionDict.__setitem__cCs|j |¡dSr*)rZClearExtension)rr    r
r
r Ú __delitem__©sz_ExtensionDict.__delitem__cCs|jj |d¡S)z™Tries to find a known extension with the specified name.
 
    Args:
      name: Extension full name.
 
    Returns:
      Extension field descriptor.
    N)rZ_extensions_by_namer)rÚnamer
r
r Ú_FindExtensionByName¬s    z#_ExtensionDict._FindExtensionByNamecCs|jj |d¡S)zœTries to find a known extension with the field number.
 
    Args:
      number: Extension field number.
 
    Returns:
      Extension field descriptor.
    N)rZ_extensions_by_numberr)rÚnumberr
r
r Ú_FindExtensionByNumber·s    z%_ExtensionDict._FindExtensionByNumbercCsdd„|j ¡DƒS)Ncss |]}|djr|dVqdS)rNr!)r#Úfr
r
r Ú    <genexpr>Äs
ÿz*_ExtensionDict.__iter__.<locals>.<genexpr>)rr'r0r
r
r Ú__iter__Âsz_ExtensionDict.__iter__cCsft|j|ƒ||jjkrdS|jtjkr:t|jj |¡ƒS|jtj    krb|jj |¡}|dk    o`|j
SdS)NFT) r rrrrrÚboolrrrZ_is_present_in_parent)rr    r2r
r
r Ú __contains__Çs    z_ExtensionDict.__contains__N)Ú__name__Ú
__module__Ú __qualname__Ú__doc__rr r)r+r.r1r3r4r6r8r;r=r
r
r
r r ?s)   r N)rAZgoogle.protobuf.internalrZgoogle.protobuf.descriptorrr Úobjectr r
r
r
r Ú<module>s