dbfdg 3 6X @sddlmZyddlmZWn ek r<ddlmZYnXeZGdddeZGddde Z dd e j De _ Gd d d e Z d d e j De _ d S))RLock) DictMixin)Mappingc@s<eZdZdZdZddZddZddZd d Zd d Z dS) LazyDictz"Dictionary populated on first use.Nc CsB|jdkr4tjz|jdkr&|jWdtjX|j|jS)N)data _fill_lockacquire_fillreleaseupper)selfkeyr/usr/lib/python3.6/lazy.py __getitem__s    zLazyDict.__getitem__c Cs>|jdkr4tjz|jdkr&|jWdtjX||jkS)N)rrrr r )r r rrr __contains__s    zLazyDict.__contains__c Cs>|jdkr4tjz|jdkr&|jWdtjXt|jS)N)rrrr r iter)r rrr__iter__$s    zLazyDict.__iter__c Cs>|jdkr4tjz|jdkr&|jWdtjXt|jS)N)rrrr r len)r rrr__len__.s    zLazyDict.__len__c Cs>|jdkr4tjz|jdkr&|jWdtjX|jjS)N)rrrr r keys)r rrrr8s    z LazyDict.keys) __name__ __module__ __qualname____doc__rrrrrrrrrrr s    rc&@sjeZdZdZdddddddd d d d d ddddddddddddddddddd d!d"d#d$d%d&d'g&Zd+d)d*Zd(S),LazyListzList populated on first use.__str____repr__ __unicode____hash__ __sizeof____cmp____lt____le____eq____ne____gt____ge__appendcountindexextendinsertpopremovereversesort__add____radd____iadd____mul____rmul____imul__rr __nonzero__r __setitem__ __delitem__r __reversed__Z __getslice__Z __setslice__Z __delslice__Ncs^dkrtSGdddtgfdd}xjD]}t|||q.LazyListN)rrrrrrrrWsrcsfdd}|S)Nc sdtjz:tdkr@tj|jxjD]}t|q.WWdtjXt t|f||S)Nr) rrrlistr+r-_propsdelattrr getattr)r argskw method_name)rcls fill_iternamerr_lazy]s   z-LazyList.__new__..lazy.._lazyr)rDrE)rrBrC)rDrlazy\s zLazyList.__new__..lazy)r;r<setattr)rBrCrFrDZnew_listr)rrBrCr__new__Ps zLazyList.__new__)N)rrrrr<rHrrrrrCs    rcCsg|]}tt|r|qSr)hasattrr;).0proprrr rsrLc0@seZdZdZd5Zd6d3d4Zd2S)7LazySetzSet populated on first use.rrrrr r!r"r#r$r%r&r'rrr7rr8r9r__sub____and____xor____or____rsub____rand____rxor____ror____isub____iand____ixor____ior__addclearcopy differencedifference_updatediscard intersectionintersection_update isdisjointissubset issupersetr-r.symmetric_differencesymmetric_difference_updateunionupdateNcs^dkrtSGdddtgfdd}xjD]}t|||q.LazySetN)rrrrrrrrMsrMcsfdd}|S)Nc srtjzHtdkrNxjD]}tj||q WxjD]}t|q)r r?r@irA)rMrBrCrDrrrEs   z,LazySet.__new__..lazy.._lazyr)rDrE)rMrBrC)rDrrFs zLazySet.__new__..lazy)rir<rG)rBrCrFrDZnew_setr)rMrBrCrrHs zLazySet.__new__)0rrrrr r!r"r#r$r%r&r'rrr7rr8r9rrNrOrPrQrRrSrTrUrVrWrXrYrZr[r\r]r^r_r`rarbrcrdr-r.rerfrgrh)N)rrrrr<rHrrrrrMusrMcCsg|]}tt|r|qSr)rIri)rJrKrrrrLsN)Z threadingrUserDictr ImportError collectionsrrrr;rr<rirMrrrrs 6/3