grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026o ®û|j#ã@s>ddlmZddlmZdgZGdd„dƒZGdd„dƒZdS)é©Úref)Ú GenericAliasÚWeakSetc@s$eZdZdd„Zdd„Zdd„ZdS)Ú_IterationGuardcCst|ƒ|_dS©N)rÚ weakcontainer)Úselfr©r ú2/opt/alt/python310/lib64/python3.10/_weakrefset.pyÚ__init__sz_IterationGuard.__init__cCs | ¡}|dur|j |¡|Sr)rÚ _iteratingÚadd)r Úwr r r Ú __enter__s z_IterationGuard.__enter__cCs8| ¡}|dur|j}| |¡|s| ¡dSdSdSr)rr ÚremoveÚ_commit_removals)r ÚeÚtÚbrÚsr r r Ú__exit__s  üz_IterationGuard.__exit__N)Ú__name__Ú __module__Ú __qualname__r rrr r r r r s rc@s&eZdZd@dd„Zdd„Zdd„Zdd „Zd d „Zd d „Zdd„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„ZeZd d!„Zd"d#„Zd$d%„ZeZd&d'„Zd(d)„Zd*d+„ZeZd,d-„Zd.d/„ZeZd0d1„Zd2d3„Zd4d5„Z e Z!d6d7„Z"d8d9„Z#d:d;„Z$e$Z%dd?„Z'e(e)ƒZ*dS)ArNcCsFtƒ|_t|ƒfdd„}||_g|_tƒ|_|dur!| |¡dSdS)NcSs8|ƒ}|dur|jr|j |¡dS|j |¡dSdSr)r Ú_pending_removalsÚappendÚdataÚdiscard)ÚitemZselfrefr r r r Ú_remove's üz!WeakSet.__init__.._remove)Úsetrrr rr Úupdate)r rr r r r r %sÿzWeakSet.__init__cCs<|jj}|jj} z|ƒ}Wn tyYdSw||ƒq r)rÚpoprrÚ IndexError)r r#rrr r r r5s  ÿûzWeakSet._commit_removalsccsP�t|ƒ�|jD] }|ƒ}|dur|Vq WdƒdS1s!wYdSr)rr©r Zitemrefrr r r Ú__iter__?s€  €û"ÿzWeakSet.__iter__cCst|jƒt|jƒSr)Úlenrr©r r r r Ú__len__HózWeakSet.__len__cCs,zt|ƒ}Wn tyYdSw||jvS)NF)rÚ TypeErrorr)r rZwrr r r Ú __contains__Ks   ÿ zWeakSet.__contains__cCs|jt|ƒft|ddƒfS)NÚ__dict__)Ú __class__ÚlistÚgetattrr(r r r Ú __reduce__Rs  ÿzWeakSet.__reduce__cCs&|jr| ¡|j t||jƒ¡dSr)rrrrrr ©r rr r r rVsz WeakSet.addcCs|jr| ¡|j ¡dSr)rrrÚclearr(r r r r3[sz WeakSet.clearcCs | |¡Sr©r.r(r r r Úcopy`ó z WeakSet.copycCsL|jr| ¡ z|j ¡}Wn tytdƒd‚w|ƒ}|dur%|Sq)NTzpop from empty WeakSet)rrrr#ÚKeyErrorr%r r r r#cs  ÿùz WeakSet.popcCó"|jr| ¡|j t|ƒ¡dSr)rrrrrr2r r r roózWeakSet.removecCr8r)rrrrrr2r r r rtr9zWeakSet.discardcCs&|jr| ¡|D]}| |¡q dSr)rrr)r ÚotherZelementr r r r"ys  ÿzWeakSet.updatecCs| |¡|Sr)r"©r r:r r r Ú__ior__s zWeakSet.__ior__cCó| ¡}| |¡|Sr)r5Údifference_update©r r:Znewsetr r r Ú differenceƒó zWeakSet.differencecCó| |¡dSr)Ú__isub__r;r r r r>‰ózWeakSet.difference_updatecCs>|jr| ¡||ur|j ¡|S|j dd„|Dƒ¡|S)Ncsó�|]}t|ƒVqdSrr©Ú.0rr r r Ú ‘ó€z#WeakSet.__isub__..)rrrr3r>r;r r r rC‹s ÿzWeakSet.__isub__csˆ ‡fdd„|Dƒ¡S)Nc3s�|] }|ˆvr|VqdSrr rFr(r r rH•ó€z'WeakSet.intersection..r4r;r r(r Ú intersection”ózWeakSet.intersectioncCrBr)Ú__iand__r;r r r Úintersection_update˜rDzWeakSet.intersection_updatecCs(|jr| ¡|j dd„|Dƒ¡|S)NcsrErrrFr r r rH�rIz#WeakSet.__iand__..)rrrrNr;r r r rMšszWeakSet.__iand__cCó|j dd„|Dƒ¡S)NcsrErrrFr r r rH¡rIz#WeakSet.issubset..)rÚissubsetr;r r r rP ózWeakSet.issubsetcCs|jttt|ƒƒkSr©rr!Úmaprr;r r r Ú__lt__¤r*zWeakSet.__lt__cCrO)NcsrErrrFr r r rH¨rIz%WeakSet.issuperset..)rÚ issupersetr;r r r rU§rQzWeakSet.issupersetcCs|jttt|ƒƒkSrrRr;r r r Ú__gt__«r*zWeakSet.__gt__cCs$t||jƒstS|jttt|ƒƒkSr)Ú isinstancer.ÚNotImplementedrr!rSrr;r r r Ú__eq__®s zWeakSet.__eq__cCr=r)r5Úsymmetric_difference_updater?r r r Úsymmetric_difference³rAzWeakSet.symmetric_differencecCrBr)Ú__ixor__r;r r r rZ¹rDz#WeakSet.symmetric_difference_updatecsBˆjrˆ ¡ˆ|urˆj ¡ˆSˆj ‡fdd„|Dƒ¡ˆS)Nc3s�|] }t|ˆjƒVqdSr)rr rFr(r r rHÁrJz#WeakSet.__ixor__..)rrrr3rZr;r r(r r\»s ÿzWeakSet.__ixor__cCs| dd„||fDƒ¡S)Ncss�|] }|D]}|VqqdSrr )rGrrr r r rHÅs€z WeakSet.union..r4r;r r r ÚunionÄrLz WeakSet.unioncCst| |¡ƒdkS)Nr)r'rKr;r r r Ú isdisjointÈszWeakSet.isdisjointcCs t|jƒSr)Úreprrr(r r r Ú__repr__Ër6zWeakSet.__repr__r)+rrrr rr&r)r,r1rr3r5r#rrr"r<r@Ú__sub__r>rCrKÚ__and__rNrMrPÚ__le__rTrUÚ__ge__rVrYr[Ú__xor__rZr\r]Ú__or__r^r`Ú classmethodrÚ__class_getitem__r r r r r$sN       N)Ú_weakrefrÚtypesrÚ__all__rrr r r r Ús