L iddlmZddlmZddlZddlZddlm Z ddlm Z ejdZ GddZ d dZd d d Zy) ) annotationsN)ref) WeakMethodTcLeZdZUdZiZded<dfd Zd dZd dZd dZ xZ S) SymbolzA constant symbol, nicer than ``object()``. Repeated calls return the same instance. >>> Symbol('foo') is Symbol('foo') True >>> Symbol('foo') foo zt.ClassVar[dict[str, Symbol]]symbolsc~||jvr|j|St| |}||j|<|SN)r super__new__)clsnameobj __class__s X/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/blinker/_utilities.pyr zSymbol.__new__s? 3;; ;;t$ $goc" D c||_yr r)selfrs r__init__zSymbol.__init__ s  rc|jSr rrs r__repr__zSymbol.__repr__#s yyrc|jfSr rrs r__getnewargs__zSymbol.__getnewargs__&s |r)rstrreturnr)rrrNone)rr)rztuple[t.Any, ...]) __name__ __module__ __qualname____doc__r __annotations__r rrr __classcell__)rs@rrr s).0G */rrctj|r*t|jt|jfSt |t tfr|St|S)z`Get a stable identifier for a receiver or sender, to be used as a dict key or in a set. )inspectismethodid__func____self__ isinstancerint)rs rmake_idr.*sQ#,,CLL!111#Sz"  c7Nrc\tj|r t||St||Sr )r'r(rr)rcallbacks rmake_refr1<s*#x(( sH r)robjectrz c.Hashabler )rrr0z!c.Callable[[ref[T]], None] | Nonerzref[T]) __future__rcollections.abcabccr'typingtweakrefrrTypeVarrrr.r1rrr<s:" AIIcN<$r