Ñò
XÁÅGc           @   s0  d  Z  d Z d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d d5 d	 „  ƒ  YZ d
 d6 d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ	 d e f d „  ƒ  YZ
 d e
 f d „  ƒ  YZ d e
 f d „  ƒ  YZ d e
 f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d  e f d! „  ƒ  YZ d" e f d# „  ƒ  YZ d$ e f d% „  ƒ  YZ d& e f d' „  ƒ  YZ d( e f d) „  ƒ  YZ d* e f d+ „  ƒ  YZ d, e f d- „  ƒ  YZ d. e f d/ „  ƒ  YZ d0 e f d1 „  ƒ  YZ d2 e f d3 „  ƒ  YZ d4 S(7   sM   
Defines classes that represent declarations found in C++ header files.
    
s   1.0t   Declarationc           B   s2   e  Z d  Z d „  Z d „  Z d „  Z d „  Z RS(   s‰   Base class for all declarations.
    @ivar name: The name of the declaration.
    @ivar namespace: The namespace of the declaration.
    c         C   s1   | |  _  | |  _ d |  _ t |  _ t |  _ d S(   sÃ   
        @type name: string
        @param name: The name of this declaration
        @type namespace: string
        @param namespace: the full namespace where this declaration resides.
        t    iÿÿÿÿN(   R   iÿÿÿÿ(   t   namet	   namespacet   locationt   Falset
   incompletet   Truet	   is_unique(   t   selfR   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   __init__   s
    				c         C   sA   |  i  p d } | o | i d ƒ o | d 7} n | |  i S(   s‘   
        Returns the full qualified name: "boost::inner::Test"
        @rtype: string
        @return: The full name of the declaration.
        R   s   ::(   R   t   endswithR   (   R	   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   FullName'   s    c         C   s   d |  i  ƒ  t |  ƒ f S(   Ns   <Declaration %s at %s>(   R   t   id(   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   __repr__3   s    c         C   s   d |  i  ƒ  S(   Ns   Declaration of %s(   R   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   __str__7   s    (   t   __name__t
   __module__t   __doc__R
   R   R   R   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR       s
   			t   Classc           B   s\   e  Z d  Z d „  Z d „  Z e d „ Z d „  Z d „  Z d „  Z	 d „  Z
 e e
 ƒ Z
 RS(   s  
    Represents a C++ class or struct. Iteration through it yields its members.

    @type abstract: bool
    @ivar abstract: if the class has any abstract methods.

    @type bases: tuple
    @ivar bases: tuple with L{Base} instances, representing the most direct
    inheritance.

    @type hierarchy: list
    @ivar hierarchy: a list of tuples of L{Base} instances, representing
    the entire hierarchy tree of this object. The first tuple is the parent 
    classes, and the other ones go up in the hierarchy.
    c         C   sM   t  i |  | | ƒ | |  _ h  |  _ | |  _ d |  _ d |  _ h  |  _ d  S(   N(    (    (   R    R
   t   _Class__memberst   _Class__member_namest   abstractt   basest	   hierarchyt   operator(   R	   R   R   t   membersR   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   O   s    					c         C   s   t  |  i ƒ S(   s-   iterates through the class' members.
        (   t   iterR   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   __iter__Y   s    c         C   s]   g  } xP |  D]H } t  | t ƒ o2 | o | i t i j o q n | i | ƒ q q W| S(   sP   Returns a list of the constructors for this class.
        @rtype: list
        (   t
   isinstancet   Constructort
   visibilityt   Scopet   publict   append(   R	   t   publics_onlyt   constructorst   member(    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   Constructors_   s     c         C   s-   x& |  i  ƒ  D] } | i ƒ  o t Sq Wt S(   sW   Returns true if this class has a public copy constructor.
        @rtype: bool
        (   R&   t   IsCopyR   R   (   R	   t   cons(    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   HasCopyConstructorl   s
     	c         C   s-   x& |  i  ƒ  D] } | i ƒ  o t Sq Wt S(   sZ   Returns true if this class has a public default constructor.
        @rtype: bool
        (   R&   t	   IsDefaultR   R   (   R	   R(   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   HasDefaultConstructorv   s
     	c         C   s¢   | i  |  i j o> t | _ x; |  D]& } | i  | i  j o t | _ q# q# Wn
 t | _ d |  i | i  <|  i i | ƒ t | t ƒ o | |  i	 | i  <n d  S(   Ni   (
   R   R   R   R   R   R   R"   R   t   ClassOperatorR   (   R	   R%   t   m(    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt	   AddMember€   s    	 	c           C   s   t  t t t t t t t f S(   N(   t   NestedClasst   MethodR   t
   Destructort   ClassVariableR,   t   ConverterOperatort   ClassEnumeration(    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   ValidMemberTypesŽ   s    (   R   R   R   R
   R   R   R&   R)   R+   R.   R5   t   staticmethod(    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   >   s   	
		
	
		R/   c           B   s    e  Z d  Z d „  Z d „  Z RS(   sû   The declaration of a class/struct inside another class/struct.
    
    @type class: string
    @ivar class: fullname of the class where this class is contained.

    @type visibility: L{Scope} 
    @ivar visibility: the visibility of this class.
    c         C   s/   t  i |  | d  | | ƒ | |  _ | |  _ d  S(   N(   R   R
   t   Nonet   class_R   (   R	   R   R8   t   visibR   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   ¡   s    	c         C   s   d |  i  |  i f S(   sS   The full name of this class, like ns::outer::inner.
        @rtype: string
        s   %s::%s(   R8   R   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   §   s    (   R   R   R   R
   R   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR/   —   s   	R    c           B   s    e  Z d  Z d Z d Z d Z RS(   s¼   Used to represent the visibility of various members inside a class.
    @cvar public: public visibility
    @cvar private: private visibility
    @cvar protected: protected visibility
    R!   t   privatet	   protected(   R   R   R   R!   R:   R;   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR    ±   s   t   Basec           B   s   e  Z d  Z e i d „ Z RS(   s™   Represents a base class of another class.
    @ivar _name: the full name of the base class.
    @ivar _visibility: the visibility of the derivation.
    c         C   s   | |  _  | |  _ d  S(   N(   R   R   (   R	   R   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   Å   s    	(   R   R   R   R    R!   R
   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR<   ¿   s   t   Functionc           B   sY   e  Z d  Z d d „ Z d „  Z e d „ Z d „  Z e	 e ƒ Z
 d „  Z e	 e ƒ Z RS(   s¶   The declaration of a function.
    @ivar _result: instance of L{Type} or None.
    @ivar _parameters: list of L{Type} instances.
    @ivar _throws: exception specifiers or None 
    c         C   s2   t  i |  | | ƒ | |  _ | |  _ | |  _ d  S(   N(   R    R
   t   resultt
   parameterst   throws(   R	   R   R   R>   t   paramsR@   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   Ô   s    		c         C   sN   |  i  d  j o d Sd d i g  } |  i  D] } | | i ƒ  q, ~ ƒ Sd  S(   NR   s
    throw(%s)s   , (   R@   R7   t   joinR   (   R	   t   _[1]t   x(    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt
   ExceptionsÞ   s    c         C   s‡   |  i  o | o d |  i ƒ  S|  i i ƒ  } d i g  } |  i D] } | | i ƒ  qD ~ ƒ } d | | |  i ƒ  |  i ƒ  f Sd S(   s¹   Returns a declaration of a pointer to this function.
        @param force: If True, returns a complete pointer declaration regardless
        if this function is unique or not.
        s   &%ss   , s   (%s (*)(%s)%s)&%sN(   R   R   R>   RB   R?   RE   (   R	   t   forceR>   RC   RD   RA   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   PointerDeclarationå   s
    3c         C   s<   d } x/ |  i  D]$ } | i d  j o | d 7} q q W| S(   Ni    i   (   R?   t   defaultR7   (   R	   t   mint   arg(    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   MinArgsò   s    
 c         C   s   t  |  i ƒ S(   N(   t   lenR?   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   MaxArgsü   s    N(   R   R   R   R7   R
   RE   R   RG   RK   t   propertyt   minArgsRM   t   maxArgs(    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR=   Í   s   
			t   Operatorc           B   s   e  Z d  Z d „  Z RS(   s   The declaration of a custom operator. Its name is the same as the 
    operator name in C++, ie, the name of the declaration "operator+(..)" is
    "+".
    c         C   s=   |  i  p d } | i d ƒ p | d 7} n | d |  i S(   NR   s   ::R   (   R   R   R   (   R	   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR     s    (   R   R   R   R   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRQ     s   R0   c           B   s/   e  Z d  Z d d „ Z d „  Z e d „ Z RS(   sÔ  The declaration of a method.
    
    @ivar _visibility: the visibility of this method.
    @ivar _virtual: if this method is declared as virtual.
    @ivar _abstract: if this method is virtual but has no default implementation.
    @ivar _static: if this method is static.
    @ivar _class: the full name of the class where this method was declared.
    @ivar _const: if this method is declared as const.
    @ivar _throws: list of exception specificiers or None
    c         C   sV   t  i |  | d  | | |
 ƒ | |  _ | |  _ | |  _ | |  _ | |  _ |	 |  _ d  S(   N(	   R=   R
   R7   R   t   virtualR   t   staticR8   t   const(   R	   R   R8   R>   RA   R9   RR   R   RS   RT   R@   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   "  s    					c         C   s   |  i  d |  i S(   Ns   ::(   R8   R   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   ,  s    c      	   C   sÅ   |  i  o t i |  | ƒ S|  i o | o d |  i ƒ  S|  i i ƒ  } d i g  } |  i D] } | | i ƒ  q_ ~ ƒ } d } |  i o
 d } n d | |  i	 | | |  i
 ƒ  |  i ƒ  f Sd S(   sÁ   Returns a declaration of a pointer to this member function.
        @param force: If True, returns a complete pointer declaration regardless
        if this function is unique or not. 
        s   &%ss   , R   RT   s   (%s (%s::*)(%s) %s%s)&%sN(   RS   R=   RG   R   R   R>   RB   R?   RT   R8   RE   (   R	   RF   R>   RC   RD   RA   RT   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRG   0  s    
3

N(   R   R   R   R7   R
   R   R   RG   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR0     s   

	R   c           B   s5   e  Z d  Z d „  Z d „  Z d „  Z e d „ Z RS(   s   A class' constructor.
    c         C   s,   t  i |  | | d  | | t t t t ƒ
 d  S(   N(   R0   R
   R7   R   (   R	   R   R8   RA   R9   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   K  s    c         C   s&   t  |  i ƒ d j o |  i t i j S(   sC   Returns True if this constructor is a default constructor.
        i    (   RL   R?   R   R    R!   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR*   O  s    c         C   s~   t  |  i ƒ d j o t S|  i d } |  i d i |  i j } t | t ƒ } |  i t i	 j } | o | o | i
 o | S(   s@   Returns True if this constructor is a copy constructor.
        i   i    (   RL   R?   R   R   R8   R   t   ReferenceTypeR   R    R!   RT   (   R	   t   paramt   class_as_paramt   param_referencet	   is_public(    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR'   U  s    c         C   s   d S(   NR   (    (   R	   RF   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRG   a  s    (   R   R   R   R
   R*   R'   R   RG   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   G  s
   			R1   c           B   s,   e  Z d  Z d „  Z d „  Z e d „ Z RS(   s   The destructor of a class.c         C   s,   t  i |  | | d  g  | | t t t ƒ
 d  S(   N(   R0   R
   R7   R   (   R	   R   R8   R9   RR   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   k  s    c         C   s   |  i  d |  i S(   Ns   ::~(   R8   R   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   n  s    c         C   s   d S(   NR   (    (   R	   RF   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRG   r  s    (   R   R   R   R
   R   R   RG   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR1   h  s   		R,   c           B   s   e  Z d  Z d „  Z RS(   s   A custom operator in a class.c         C   s   |  i  d |  i S(   Ns   ::operator (   R8   R   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   }  s    (   R   R   R   R   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR,   z  s   R3   c           B   s   e  Z d  Z d „  Z RS(   s0   An operator in the form "operator OtherClass()".c         C   s   |  i  d |  i i ƒ  S(   Ns   ::operator (   R8   R>   R   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   ˆ  s    (   R   R   R   R   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR3   …  s   t   Typec           B   s2   e  Z d  Z e d d d „ Z d „  Z d „  Z RS(   s˜  Represents the type of a variable or parameter.
    @ivar _const: if the type is constant.
    @ivar _default: if this type has a default value associated with it.
    @ivar _volatile: if this type was declared with the keyword volatile.
    @ivar _restricted: if this type was declared with the keyword restricted.
    @ivar _suffix: Suffix to get the full type name. '*' for pointers, for
    example.
    R   c         C   sD   t  i |  | d  ƒ | |  _ | |  _ t |  _ t |  _ | |  _ d  S(   N(	   R    R
   R7   RT   RH   R   t   volatilet
   restrictedt   suffix(   R	   R   RT   RH   R]   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   š  s    				c         C   s-   |  i  o
 d } n d } d | |  i d S(   Ns   const R   s   <Type t   >(   RT   R   (   R	   RT   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   ¤  s    

c         C   s,   |  i  o
 d } n d } | |  i |  i S(   Ns   const R   (   RT   R   R]   (   R	   RT   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   ¬  s    

N(   R   R   R   R   R7   R
   R   R   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRZ     s   
	t	   ArrayTypec           B   s   e  Z d  Z d „  Z RS(   s˜   Represents an array.
    @ivar min: the lower bound of the array, usually 0. Can be None.
    @ivar max: the upper bound of the array. Can be None.
    c         C   s)   t  i |  | | ƒ | |  _ | |  _ d S(   s   min and max can be None.N(   RZ   R
   RI   t   max(   R	   R   RT   RI   R`   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   ½  s    	(   R   R   R   R
   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR_   ·  s   RU   c           B   s#   e  Z d  Z e d e d d „ Z RS(   s   A reference type.R   c         C   s2   t  i |  | | | ƒ | o | d |  _ n d  S(   Nt   &(   RZ   R
   R]   (   R	   R   RT   RH   t	   expandRefR]   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   Ë  s    N(   R   R   R   R   R7   R   R
   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRU   È  s   t   PointerTypec           B   s#   e  Z d  Z e d e d d „ Z RS(   s   A pointer type.R   c         C   s2   t  i |  | | | ƒ | o | d |  _ n d  S(   Nt   *(   RZ   R
   R]   (   R	   R   RT   RH   t   expandPointerR]   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   ×  s    N(   R   R   R   R   R7   R
   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRc   Ô  s   t   FundamentalTypec           B   s   e  Z d  Z e d d „ Z RS(   s2   One of the fundamental types, like int, void, etc.c         C   s   t  i |  | | | ƒ d  S(   N(   RZ   R
   (   R	   R   RT   RH   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   ã  s    N(   R   R   R   R   R7   R
   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRf   à  s   t   FunctionTypec           B   s    e  Z d  Z d „  Z d „  Z RS(   s¿   A pointer to a function.
    @ivar _result: the return value
    @ivar _parameters: a list of Types, indicating the parameters of the function.
    @ivar _name: the name of the function.
    c         C   s8   t  i |  d t ƒ | |  _ | |  _ |  i ƒ  |  _ d  S(   NR   (   RZ   R
   R   R>   R?   R   R   (   R	   R>   R?   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   ò  s    		c         C   sX   d |  i  i ƒ  } g  } |  i D] } | | i ƒ  q! ~ } | d d i | ƒ 7} | S(   Ns   %s (*)s   (%s)s   , (   R>   R   R?   RB   (   R	   t   fullRC   RD   RA   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   ù  s    *(   R   R   R   R
   R   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRg   ë  s   	t
   MethodTypec           B   s    e  Z d  Z d „  Z d „  Z RS(   sw   A pointer to a member function of a class.
    @ivar _class: The fullname of the class that the method belongs to.
    c         C   s    | |  _  t i |  | | ƒ d  S(   N(   R8   Rg   R
   (   R	   R>   R?   R8   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
     s    	c         C   sa   d |  i  i ƒ  |  i f } g  } |  i D] } | | i ƒ  q* ~ } | d d i | ƒ 7} | S(   Ns
   %s (%s::*)s   (%s)s   , (   R>   R   R8   R?   RB   (   R	   Rh   RC   RD   RA   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR     s    *(   R   R   R   R
   R   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRi     s   	t   Variablec           B   s   e  Z d  Z d „  Z RS(   sg   Represents a global variable.

    @type _type: L{Type}
    @ivar _type: The type of the variable.
    c         C   s    t  i |  | | ƒ | |  _ d  S(   N(   R    R
   t   type(   R	   Rk   R   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
     s    (   R   R   R   R
   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRj     s   R2   c           B   s    e  Z d  Z d „  Z d „  Z RS(   s%  Represents a class variable.

    @type _visibility: L{Scope}
    @ivar _visibility: The visibility of this variable within the class.

    @type _static: bool
    @ivar _static: Indicates if the variable is static.

    @ivar _class: Full name of the class that this variable belongs to.
    c         C   s5   t  i |  | | d  ƒ | |  _ | |  _ | |  _ d  S(   N(   Rj   R
   R7   R   RS   R8   (   R	   Rk   R   R8   R9   RS   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   2  s    		c         C   s   |  i  d |  i S(   Ns   ::(   R8   R   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   9  s    (   R   R   R   R
   R   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR2   &  s   
	t   Enumerationc           B   s    e  Z d  Z d „  Z d „  Z RS(   sr   Represents an enum.

    @type _values: dict of str => int
    @ivar _values: holds the values for this enum.
    c         C   s    t  i |  | | ƒ h  |  _ d  S(   N(   R    R
   t   values(   R	   R   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   G  s    c         C   s=   | |  i  j p t ‚ |  i } | o | d 7} n | | S(   s7   Returns the full name for a value in the enum.
        s   ::(   Rm   t   AssertionErrorR   (   R	   R   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   ValueFullNameL  s
    	(   R   R   R   R
   Ro   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRl   @  s   	R4   c           B   s)   e  Z d  Z d „  Z d „  Z d „  Z RS(   s³   Represents an enum inside a class.

    @ivar _class: The full name of the class where this enum belongs.
    @ivar _visibility: The visibility of this enum inside his class.
    c         C   s)   t  i |  | d  ƒ | |  _ | |  _ d  S(   N(   Rl   R
   R7   R8   R   (   R	   R   R8   R9   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   `  s    	c         C   s   d |  i  |  i f S(   Ns   %s::%s(   R8   R   (   R	   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR   f  s    c         C   s(   | |  i  j p t ‚ d |  i | f S(   Ns   %s::%s(   Rm   Rn   R8   (   R	   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRo   j  s    (   R   R   R   R
   R   Ro   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR4   Y  s   		t   Typedefc           B   s   e  Z d  Z d „  Z RS(   s·   A Typedef declaration.

    @type _type: L{Type}
    @ivar _type: The type of the typedef.

    @type _visibility: L{Scope}
    @ivar _visibility: The visibility of this typedef.
    c         C   s,   t  i |  | | ƒ | |  _ t i |  _ d  S(   N(   R    R
   Rk   R    R!   R   (   R	   Rk   R   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   |  s    	(   R   R   R   R
   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRp   r  s   t   Unknownc           B   s   e  Z d  Z d „  Z RS(   s:   A declaration that Pyste does not know how to handle.
    c         C   s   t  i |  | d  ƒ d  S(   N(   R    R
   R7   (   R	   R   (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyR
   Œ  s    (   R   R   R   R
   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyRq   ˆ  s   N(    (    (   R   t   versiont   objectR    R   R/   R    R<   R=   RQ   R0   R   R1   R,   R3   RZ   R_   RU   Rc   Rf   Rg   Ri   Rj   R2   Rl   R4   Rp   Rq   (    (    (    s2   /usr/lib/pymodules/python2.6/Pyste/declarations.pyt   <module>	   s4   +Y91!'