ACC SHELL

Path : /usr/lib/python/
File Upload :
Current File : //usr/lib/python/copy_reg.pyo

Ñò
nÄMc@sØdZddklZdddddgZhZdd„Zd	„Zye	Wne
j
onXd
„Zee	ee	ƒd„ZdZ
d„Zd„Zd„ZhZhZhZd„Zd„Zd„ZdS(s¬Helper to provide extensibility for pickle/cPickle.

This is only useful to add pickle support for extension types defined in
C, not for instances of user-defined classes.
iÿÿÿÿ(t	ClassTypetpickletconstructort
add_extensiontremove_extensiontclear_extension_cachecCslt|ƒtjotdƒ‚nt|dƒptdƒ‚n|t|<|dj	ot|ƒndS(Ns-copy_reg is not intended for use with classest__call__s$reduction functions must be callable(ttypet
_ClassTypet	TypeErrorthasattrtdispatch_tabletNoneR(tob_typetpickle_functiontconstructor_ob((s/usr/lib/python2.6/copy_reg.pyRs

cCs$t|dƒptdƒ‚ndS(NRsconstructors must be callable(R
R	(tobject((s/usr/lib/python2.6/copy_reg.pyRscCst|i|iffS(N(tcomplextrealtimag(tc((s/usr/lib/python2.6/copy_reg.pytpickle_complex'scCs]|tjoti|ƒ}n:|i||ƒ}|itijo|i||ƒn|S(N(Rt__new__t__init__(tclstbasetstatetobj((s/usr/lib/python2.6/copy_reg.pyt_reconstructor.s
ii	cCs5x>|iiD]*}t|dƒo|it@oPq
q
Wt}|tjo
d}n1||ijotd|i‚n||ƒ}|i||f}y
|i	}Wn_t
j
oSt|ddƒotdƒ‚ny
|i}Wqt
j
o
d}qXnX|ƒ}|ot
||fSt
|fSdS(Nt	__flags__scan't pickle %s objectst	__slots__sNa class that defines __slots__ without defining __getstate__ cannot be pickled(t	__class__t__mro__R
Rt	_HEAPTYPERRR	t__name__t__getstate__tAttributeErrortgetattrt__dict__R(tselftprotoRRtargstgetstatetdict((s/usr/lib/python2.6/copy_reg.pyt
_reduce_ex;s0
	



	cGs|i||ŒS(N(R(RR)((s/usr/lib/python2.6/copy_reg.pyt
__newobj__\scCs|iidƒ}|dj	o|Sg}t|dƒpnÄxÀ|iD]µ}d|ijoŸ|id}t|tƒo
|f}nxr|D]f}|djoqq|idƒo/|idƒo|i	d|i
|fƒq|i	|ƒqWqHqHWy
||_WnnX|S(	s›Return a list of slot names for a given class.

    This needs to find slots defined by the class and its bases, so we
    can't simply return the __slots__ attribute.  We must walk down
    the Method Resolution Order and concatenate the __slots__ of each
    class found there.  (This assumes classes don't modify their
    __slots__ attribute to misrepresent their slots after the class is
    defined.)
    t
__slotnames__RR&t__weakref__t__s_%s%sN(s__dict__s__weakref__(R&tgetRR
R t
isinstancet
basestringt
startswithtendswithtappendR"R.(RtnamesRtslotstname((s/usr/lib/python2.6/copy_reg.pyt
_slotnames_s0




!
cCsât|ƒ}d|jo
djnp
td‚n||f}ti|ƒ|joti|ƒ|jodS|tjotd|t|fƒ‚n|tjotd|t|fƒ‚n|t|<|t|<dS(sRegister an extension code.iiÿÿÿscode out of rangeNs)key %s is already registered with code %ss$code %s is already in use for key %s(tintt
ValueErrort_extension_registryR1t_inverted_registry(tmoduleR9tcodetkey((s/usr/lib/python2.6/copy_reg.pyRs



cCs|||f}ti|ƒ|jpti|ƒ|jotd||fƒ‚nt|=t|=|tjot|=ndS(s0Unregister an extension code.  For testing only.s%key %s is not registered with code %sN(R=R1R>R<t_extension_cache(R?R9R@RA((s/usr/lib/python2.6/copy_reg.pyR¯s
cCstiƒdS(N(RBtclear(((s/usr/lib/python2.6/copy_reg.pyR»sNi(t__doc__ttypesRRt__all__RRRRRt	NameErrorRRR!R,R-R:R=R>RBRRR(((s/usr/lib/python2.6/copy_reg.pyt<module>s.
					!		8		

ACC SHELL 2018