ó
è¾bc           @   sK   d  „  Z  d d	 d „  ƒ  YZ d d
 d „  ƒ  YZ d Z d „  Z d „  Z d S(   c         C   sJ   g  } x= |  D]5 } t  | t ƒ r5 | t | ƒ } q | j | ƒ q W| S(   N(   t
   isinstancet   tuplet   flattent   append(   t   tupt   eltst   elt(    (    s#   /usr/lib/python2.7/compiler/misc.pyR      s    t   Setc           B   sP   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 RS(   c         C   s   i  |  _  d  S(   N(   R   (   t   self(    (    s#   /usr/lib/python2.7/compiler/misc.pyt   __init__   s    c         C   s   t  |  j ƒ S(   N(   t   lenR   (   R   (    (    s#   /usr/lib/python2.7/compiler/misc.pyt   __len__   s    c         C   s   | |  j  k S(   N(   R   (   R   R   (    (    s#   /usr/lib/python2.7/compiler/misc.pyt   __contains__   s    c         C   s   | |  j  | <d  S(   N(   R   (   R   R   (    (    s#   /usr/lib/python2.7/compiler/misc.pyt   add   s    c         C   s   |  j  j ƒ  S(   N(   R   t   keys(   R   (    (    s#   /usr/lib/python2.7/compiler/misc.pyt   elements   s    c         C   s   | |  j  k S(   N(   R   (   R   R   (    (    s#   /usr/lib/python2.7/compiler/misc.pyt   has_elt   s    c         C   s   |  j  | =d  S(   N(   R   (   R   R   (    (    s#   /usr/lib/python2.7/compiler/misc.pyt   remove   s    c         C   s    t  ƒ  } | j j |  j ƒ | S(   N(   R   R   t   update(   R   t   c(    (    s#   /usr/lib/python2.7/compiler/misc.pyt   copy   s    	(
   t   __name__t
   __module__R	   R   R   R   R   R   R   R   (    (    (    s#   /usr/lib/python2.7/compiler/misc.pyR      s   							t   Stackc           B   s5   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   s   g  |  _  |  j  j |  _ d  S(   N(   t   stackt   pop(   R   (    (    s#   /usr/lib/python2.7/compiler/misc.pyR	       s    	c         C   s   t  |  j ƒ S(   N(   R
   R   (   R   (    (    s#   /usr/lib/python2.7/compiler/misc.pyR   #   s    c         C   s   |  j  j | ƒ d  S(   N(   R   R   (   R   R   (    (    s#   /usr/lib/python2.7/compiler/misc.pyt   push%   s    c         C   s   |  j  d S(   Niÿÿÿÿ(   R   (   R   (    (    s#   /usr/lib/python2.7/compiler/misc.pyt   top'   s    c         C   s   |  j  | S(   N(   R   (   R   t   index(    (    s#   /usr/lib/python2.7/compiler/misc.pyt   __getitem__)   s    (   R   R   R	   R   R   R   R   (    (    (    s#   /usr/lib/python2.7/compiler/misc.pyR      s
   				i   c         C   sË   |  j  d ƒ s |  St |  ƒ d t k r- |  S|  j d ƒ r@ |  Sy+ d } x | | d k ri | d } qL WWn t k
 r |  SX| | } t | ƒ t |  ƒ } | t k r½ | t |  } n  d | |  f S(   Nt   __i   i    t   _i   s   _%s%s(   t
   startswithR
   t
   MANGLE_LENt   endswitht
   IndexError(   t   namet   klasst   it   tlen(    (    s#   /usr/lib/python2.7/compiler/misc.pyt   mangle.   s"    
c         C   sE   | g } x5 | r@ | j  d ƒ } |  | _ | j | j ƒ  ƒ q Wd S(   s<   Set the filename attribute to filename on every node in treei    N(   R   t   filenamet   extendt   getChildNodes(   R)   t   treet   worklistt   node(    (    s#   /usr/lib/python2.7/compiler/misc.pyt   set_filenameC   s
    			N(    (    (   R   R   R   R!   R(   R/   (    (    (    s#   /usr/lib/python2.7/compiler/misc.pyt   <module>   s
   			