mò
ÇîøCc           @   sZ   d  Z  d Z d k Z e i Z d „  Z e e _ e e d ƒ p d „  Z e e _ n d S(   sB   Monkey patches for 'inspect' to let it recognize Zopes data types.i    Nc         C   sm   t  |  ƒ p` t |  d ƒ oP t |  d ƒ o@ t |  d ƒ o0 t |  d ƒ o  t |  d ƒ o t i |  i ƒ S(   Nt   __doc__t   __name__t   im_classt   im_funct   im_self(   t	   _ismethodt   objectt   hasattrt   inspectt
   isfunctionR   (   R   (    (    tI   /home2/kennisonb/webapps/zope/Zope/Products/DocFinderTab/patch_inspect.pyt   implementsMethod   s    t   getmroc         C   s‡   g  } |  g } h  } | i } x\ | oT | i d ƒ } | | ƒ o q! n d | | <| i	 | ƒ t
 | i ƒ | d d +q! Wt | ƒ S(   s6   the method resolution order for *class_* (as a tuple).i    N(   t   rt   class_t   queuet   clst   has_keyt   seent   popt   clt   Nonet   appendt   listt	   __bases__t   tuple(   R   R   R   R   R   R   (    (    R
   R      s       
(   R    t   __refresh_module__R   t   ismethodR   R   R   R   (   R   R   R   R   R   (    (    R
   t   ?   s   			
		