-í
ÿÔ5;c       sl      d  k  Z  d f  d     YZ 0 d e f d     YZ ? d   Z  e d j o  e   n d  S(   Ns   AcquisitionMixinc      s>    t  Z d  Z   e Z  e Z  d   Z * d   Z RS(   s   Mixin class allowing implicit acquisition of attributes from
        objects up a containment hierachy.

        To enable this feature, an object 'b' contained in another
        object 'a' must set the instance variable b.baseobj to
        a. The search is done recursively until either an exception
        is raised by the queried object or the object is found.

        Attributes that strt with an underscore ('_') can not
        be acquired. Be careful when acquiring methods: the method
        will be executed in the baseobjects context, not the one
        it is acquired into.

        See the documentation of acquire() for details.

    c    s_    ! # | i d t  } $ | t j	 o % | |  _ & | d =n ( t |  i | |  d S(   så    Create the object and call startup(*args,**kw)
            - if you give a keyword 'baseobj' then its parameter
              is used to set the baseobj for acquisition; the keyword
              is then deleted from kw
        s   baseobjN(   s   kws   gets   Nones   baseobjs   selfs   applys   startups   args(   s   selfs   argss   kws   baseobj(    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   __init__ s   c    s   * - . d S(   s-    Override this to init the instance.
        N(    (   s   selfs   argss   kw(    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   startup* s   (	   s   __name__s
   __module__s   __doc__s   Nones   baseobjs   acquires   __getattr__s   __init__s   startup(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   AcquisitionMixin s
   		s   PythonAcquisitionMixinc      sA   0 t  Z 2 e e d  Z ; e i Z < e i Z = e i Z RS(   Nc    s>   2 6 | d d j o 7 | |  i |  Sn 8 | |  d  S(   Ni    s   _(   s   names   getattrs   selfs   baseobjs   AttributeError(   s   selfs   names   getattrs   AttributeError(    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   __getattr__2 s   (	   s   __name__s
   __module__s   getattrs   AttributeErrors   __getattr__s   AcquisitionMixins   baseobjs   __init__s   startup(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   PythonAcquisitionMixin0 s   		c  
   sß  ? A d t  f d     Y}  E d t  f d     Y} H d t  f d     Y} L |    } M | d |  }	 N | d |	  } Q | i G|	 i G| i GHR |	 i G| i GHS | i GHU d |	 _ V | i G|	 i G| i GHX d	 | _ Y | i G|	 i G| i GHZ H] d
 GH^ H_ d  k	 } ` t
 d  } b d t  f d     Y}  e d t  f d     Y} h d t  f d     Y} l |    } m | d |  }	 n | d |	  } p | i	   } q x/ | Dq ]$ } r | i s | i t | i qœWu d G| i	   | Gd GHw d t f d     Y}  z d t f d     Y} } d t f d     Y}  |    }  | d |  }	  | d |	  }  | i	   }  x/ | D ]$ }  | i  | i  | i qW d G| i	   | Gd GHd  S(   Ns   Cc      s   A t  Z B d Z C d Z RS(   Ni   i	   (   s   __name__s
   __module__s   as   x(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   CA s   		s   Dc      s   E t  Z F d Z RS(   Ni   (   s   __name__s
   __module__s   b(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   DE s   	s   Ec      s   H t  Z I d Z RS(   Ni   (   s   __name__s
   __module__s   c(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   EH s   	s   baseobji   i   s   Performance:i  c      s   b t  Z c d Z RS(   Ni	   (   s   __name__s
   __module__s   x(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   Cb s   	c      s   e t  Z f d Z RS(   Ni   (   s   __name__s
   __module__s   y(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   De s   	c      s   h t  Z i d Z RS(   Ni   (   s   __name__s
   __module__s   z(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   Eh s   	s   AcquisitionMixin:s   secondsc      s   w t  Z x d Z RS(   Ni	   (   s   __name__s
   __module__s   x(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   Cw s   	c      s   z t  Z { d Z RS(   Ni   (   s   __name__s
   __module__s   y(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   Dz s   	c      s   } t  Z ~ d Z RS(   Ni   (   s   __name__s
   __module__s   z(    (    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   E} s   	s   PythonAcquisitionMixin:(   s   AcquisitionMixins   Cs   Ds   Es   cs   ds   es   as   bs   times   ranges   ls   ts   is   xs   ys   zs   PythonAcquisitionMixin(
   s   Cs   Es   Ds   is   cs   ls   ts   times   es   d(    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   _test? sX   
 	


 	

s   __main__(   s   mx.Tools.NewBuiltinss   mxs   AcquisitionMixins   PythonAcquisitionMixins   _tests   __name__(   s   PythonAcquisitionMixins   _tests   AcquisitionMixins   mx(    (    sG   /mit/seven/lib/python2.2/site-packages/mx/Tools/Examples/Acquisition.pys   ? s
   -M