-í
ç¶<c       sˆ   d  Z  d k l Z d d g Z h  Z h  Z e d „ Z d „  Z	 d „  Z
 e e d ƒ e
 e ƒ d „  Z d	 e _ d	 d
 >Z d „  Z d S(   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.
(   s	   ClassTypes   pickles   constructorc    sj   t  |  ƒ t j o t d ƒ ‚ n t | ƒ o t d ƒ ‚ n | t |  <| t j	 o t	 | ƒ n d  S(   Ns-   copy_reg is not intended for use with classess$   reduction functions must be callable(
   s   types   ob_types
   _ClassTypes	   TypeErrors   callables   pickle_functions   dispatch_tables   constructor_obs   Nones   constructor(   s   ob_types   pickle_functions   constructor_ob(    (    s   /usr/lib/python2.2/copy_reg.pys   pickle s    
c    s,   t  |  ƒ o t d ƒ ‚ n d t |  <d  S(   Ns   constructors must be callablei   (   s   callables   objects	   TypeErrors   safe_constructors(   s   object(    (    s   /usr/lib/python2.2/copy_reg.pys   constructor s    c    s   t  |  i |  i f f Sd  S(   N(   s   complexs   cs   reals   imag(   s   c(    (    s   /usr/lib/python2.2/copy_reg.pys   pickle_complex  s    x0.01.0c    s*   | i |  | ƒ } | i | | ƒ | Sd  S(   N(   s   bases   __new__s   clss   states   objs   __init__(   s   clss   bases   states   obj(    (    s   /usr/lib/python2.2/copy_reg.pys   _reconstructor' s    i   i	   c    s  x> |  i i D]* } t | d ƒ o | i t @o Pn q Wt } | t j o
 t } n1 | |  i j o t
 d | i ‚ n | |  ƒ } |  i | | f } y |  i } Wn< t j
 o0 y |  i } Wn t j
 o t } n Xn X| ƒ  } | o t | | f Sn t | f Sd  S(   Ns	   __flags__s   can't pickle %s objects(   s   selfs	   __class__s   __mro__s   bases   hasattrs	   __flags__s	   _HEAPTYPEs   objects   Nones   states	   TypeErrors   __name__s   argss   __getstate__s   getstates   AttributeErrors   __dict__s   dicts   _reconstructor(   s   selfs   getstates   argss   states   bases   dict(    (    s   /usr/lib/python2.2/copy_reg.pys   _reduce/ s,     	
	N(   s   __doc__s   typess	   ClassTypes
   _ClassTypes   __all__s   dispatch_tables   safe_constructorss   Nones   pickles   constructors   pickle_complexs   types   complexs   _reconstructors   __safe_for_unpickling__s	   _HEAPTYPEs   _reduce(
   s   __all__s   pickles   _reconstructors	   _HEAPTYPEs   _reduces
   _ClassTypes   safe_constructorss   pickle_complexs   constructors   dispatch_table(    (    s   /usr/lib/python2.2/copy_reg.pys   ? s   				
