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
U
Þ=®dã@sðddlmZddlZddlZddlZddlZddlmZddl    m
Z
ddl m Z ej ejeefeefZGdd„dƒZde_Gd    d„dƒZd
d d œd d„Ze
e fZGdd„de
ƒZdddœdd„Zddd„ZGdd„dƒZdddœdd„ZdS)é)Ú annotationsN)Úpartial)Úref)ÚBoundMethodWeakrefc@s$eZdZdd„Zdd„Zdd„ZdS)Ú_symbolcCs||_|_dS)zConstruct a new named symbol.N)Ú__name__Úname)Úselfr©r
úId:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\blinker/_utilities.pyÚ__init__sz_symbol.__init__cCs t|jffS©N)Úsymbolr©r    r
r
r Ú
__reduce__sz_symbol.__reduce__cCs|jSr )rrr
r
r Ú__repr__sz_symbol.__repr__N)rÚ
__module__Ú __qualname__r rrr
r
r
r rsrrc@seZdZdZiZdd„ZdS)ra?A constant symbol.
 
    >>> symbol('foo') is symbol('foo')
    True
    >>> symbol('foo')
    foo
 
    A slight refinement of the MAGICCOOKIE=object() pattern.  The primary
    advantage of symbol() is its repr().  They are also singletons.
 
    Repeated calls of symbol('name') will all return the same instance.
 
    cCs8z |j|WStk
r2|j |t|ƒ¡YSXdSr )ÚsymbolsÚKeyErrorÚ
setdefaultr)Úclsrr
r
r Ú__new__/s zsymbol.__new__N)rrrÚ__doc__rrr
r
r
r rsÚobjectÚ IdentityType)ÚobjÚreturncCsZt|dƒrt|jƒt|jƒfSt|dƒr<t|jƒt|jƒfSt|ttfƒrN|St|ƒSdS)NÚ__func__Úim_func)    ÚhasattrÚidrÚ__self__rÚim_selfÚ
isinstanceÚintÚstr)rr
r
r Úhashable_identity6s
 
r'c@s"eZdZUdZded<ded<dS)Úannotatable_weakrefz7A weakref.ref that supports custom instance attributes.zt.Optional[IdentityType]Z receiver_idZ    sender_idN)rrrrÚ__annotations__r
r
r
r r(Ds
r()rcKs@t|ƒrt||ƒ}n
t||ƒ}| ¡D]\}}t|||ƒq&|S)zReturn an annotated weak ref.)ÚcallableÚcallable_referencer(ÚitemsÚsetattr)rÚcallbackrZweakÚkeyÚvaluer
r
r Ú    referenceKs  
r1cCsJt|dƒr |jdk    r t||dSt|dƒr@|jdk    r@t||dSt||ƒS)z@Return an annotated weak ref, supporting bound instance methods.r#N)ÚtargetZ    on_deleter")r r#rr"r()rr.r
r
r r+Xs
  r+c@s eZdZdZdd„Zdd„ZdS)Ú lazy_propertyz(A @property that is only evaluated once.cCs||_|j|_dSr )Ú    _deferredr)r    Údeferredr
r
r r dszlazy_property.__init__cCs*|dkr |S| |¡}t||jj|ƒ|Sr )r4r-r)r    rrr0r
r
r Ú__get__hs
 
zlazy_property.__get__N)rrrrr r6r
r
r
r r3asr3zt.AnyÚbool)ÚfuncrcCsªtjdkrt |¡Sz ddlm}t||ƒr2WdSWntk
rHYnXt     |¡r\|j
}qJt|t ƒrn|j }q\t  |¡s|dS|jjtj@rŽdStjj}t|ddƒ|kSdS)N)éér)Ú    AsyncMockTFÚ _is_coroutine)ÚsysÚ version_infoÚasyncioÚiscoroutinefunctionZ unittest.mockr;r$Ú ImportErrorÚinspectÚismethodrrr8Ú
isfunctionÚ__code__Úco_flagsÚ CO_COROUTINEZ
coroutinesr<Úgetattr)r8r;Zacicr
r
r Úis_coroutine_functionps$
 
 
 
 
 
 
rI)N)N)Ú
__future__rr?rBr=ÚtypingÚtÚ    functoolsrÚweakrefrZblinker._saferefrÚUnionÚTupler%r&rrrrr'Z    WeakTypesr(r1r+r3rIr
r
r
r Ú<module>s&      ÿ