-
<c       s    d  Z    d k Z  d k l Z l Z l Z l Z l Z l Z l Z l	 Z	 l
 Z
 l Z l Z l Z l Z l Z l Z 	 d k Z  d d d d d d g Z  d	   Z  d
 f  d     YZ $ e   Z & d   Z , d   Z 4 d f  d     YZ  d e f d     YZ  d e f d     YZ  d f  d     YZ  e d j o  d k Z d k Z  e e i  d  i!   Z"  e e" e i# i$ e i  d  d d  Z%  xE e% i&   D ]4 Z'  e% i( e'  Z)  e) Ge) i*   Ge) i+   GHqWn d S(   s2   Interface to the compiler's internal symbol tablesN(   s   USEs
   DEF_GLOBALs	   DEF_LOCALs	   DEF_PARAMs   DEF_STARs   DEF_DOUBLESTARs   DEF_INTUPLEs   DEF_FREEs   DEF_FREE_GLOBALs   DEF_FREE_CLASSs
   DEF_IMPORTs	   DEF_BOUNDs   OPT_IMPORT_STARs   OPT_EXECs   OPT_BARE_EXECs   symtables   SymbolTables   newSymbolTables   Classs   Functions   Symbolc    s3     t  i |  | |  }  t | d |  Sd  S(   Ni    (   s	   _symtables   symtables   codes   filenames   compile_types   raws   newSymbolTable(   s   codes   filenames   compile_types   raw(    (    s   /usr/lib/python2.2/symtable.pys   symtable s   s   SymbolTableFactoryc      s/    t  Z  d   Z  d   Z  d   Z RS(   Nc    s     t  i   |  _ d  S(   N(   s   weakrefs   WeakValueDictionarys   selfs   _SymbolTableFactory__memo(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   __init__ s   c    sk     | i t i j o  t | |  Sn  | i t i j o  t | |  Sn  t | |  Sd  S(   N(	   s   tables   types	   _symtables   TYPE_FUNCTIONs   Functions   filenames
   TYPE_CLASSs   Classs   SymbolTable(   s   selfs   tables   filename(    (    s   /usr/lib/python2.2/symtable.pys   new s
   c    si     | | f }  |  i i | t  }   | t j o$ ! |  i | |  } |  i | <n " | Sd  S(   N(	   s   tables   filenames   keys   selfs   _SymbolTableFactory__memos   gets   Nones   objs   new(   s   selfs   tables   filenames   objs   key(    (    s   /usr/lib/python2.2/symtable.pys   __call__ s
   $(   s   __name__s
   __module__s   __init__s   news   __call__(    (    (    s   /usr/lib/python2.2/symtable.pys   SymbolTableFactory s   	c    s&   & ' ( |  o ) d Sn * d Sd S(   s(   Helper to force boolean result to 1 or 0i   i    N(   s   x(   s   x(    (    s   /usr/lib/python2.2/symtable.pys   bool& s   
c    sW   , - |  t t B@o |  t t Bt B@o / d Sn 0 |  t @o 1 d Sn 2 d Sd  S(   Ni   i    (   s   flagss   USEs   DEF_FREEs	   DEF_LOCALs	   DEF_PARAMs
   DEF_GLOBALs   DEF_FREE_CLASS(   s   flags(    (    s   /usr/lib/python2.2/symtable.pys   is_free, s
   %c      s   4 t  Z 5 d   Z : d   Z F d   Z P d   Z S d   Z V d   Z Y d   Z ] d   Z	 ` d	   Z
 c d
   Z g d   Z k d   Z n d   Z v d   Z y d   Z ~ d   Z RS(   Nc    s+   5 6 | |  _ 7 | |  _ 8 h  |  _ d  S(   N(   s	   raw_tables   selfs   _tables   filenames	   _filenames   _symbols(   s   selfs	   raw_tables   filename(    (    s   /usr/lib/python2.2/symtable.pys   __init__5 s   c    s   : ; |  i t j o < d } n > d |  i i } @ |  i i d j o A d | |  i f Sn C d | |  i i |  i f Sd  S(   Ns    s   %s s   globals   <%sSymbolTable for module %s>s   <%sSymbolTable for %s in %s>(   s   selfs	   __class__s   SymbolTables   kinds   __name__s   _tables   names	   _filename(   s   selfs   kind(    (    s   /usr/lib/python2.2/symtable.pys   __repr__: s   c    s   F G |  i i t i j o H d Sn I |  i i t i j o J d Sn K |  i i t i j o L d Sn M t o0 |  i i d d d f j p t d |  i i  d  S(   Ns   modules   functions   classi   i   i   s   unexpected type: %s(	   s   selfs   _tables   types	   _symtables   TYPE_MODULEs   TYPE_FUNCTIONs
   TYPE_CLASSs	   __debug__s   AssertionError(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   get_typeF s   c    s   P Q |  i i Sd  S(   N(   s   selfs   _tables   id(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   get_idP s   c    s   S T |  i i Sd  S(   N(   s   selfs   _tables   name(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   get_nameS s   c    s   V W |  i i Sd  S(   N(   s   selfs   _tables   lineno(   s   self(    (    s   /usr/lib/python2.2/symtable.pys
   get_linenoV s   c    s1   Y Z t  |  i i t i j o |  i i  Sd  S(   N(   s   bools   selfs   _tables   types	   _symtables   TYPE_FUNCTIONs	   optimized(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   is_optimizedY s   c    s   ] ^ t  |  i i  Sd  S(   N(   s   bools   selfs   _tables   nested(   s   self(    (    s   /usr/lib/python2.2/symtable.pys	   is_nested] s   c    s   ` a t  |  i i  Sd  S(   N(   s   bools   selfs   _tables   children(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   has_children` s   c    s%   c d e t  |  i i t t B@ Sd S(   s"   Return true if the scope uses execN(   s   bools   selfs   _tables	   optimizeds   OPT_EXECs   OPT_BARE_EXEC(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   has_execc s   c    s!   g h i t  |  i i t @ Sd S(   s&   Return true if the scope uses import *N(   s   bools   selfs   _tables	   optimizeds   OPT_IMPORT_STAR(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   has_import_starg s   c    s   k l |  i i i   Sd  S(   N(   s   selfs   _tables   symbolss   keys(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   get_identifiersk s   c    s|   n o |  i i |  } p | t j oI q |  i i | } r |  i	 |  } s t | | |  } |  i | <n t | Sd  S(   N(   s   selfs   _symbolss   gets   names   syms   Nones   _tables   symbolss   flagss   _SymbolTable__check_childrens
   namespacess   Symbol(   s   selfs   names   flagss
   namespacess   sym(    (    s   /usr/lib/python2.2/symtable.pys   lookupn s   $c    sA   v w g  i  } |  i   Dw ] } | |  i |   q ~ Sd  S(   N(   s   appends   _[1]s   selfs   get_identifierss   idents   lookup(   s   selfs   _[1]s   ident(    (    s   /usr/lib/python2.2/symtable.pys   get_symbolsv s    c    s[   y z g  i  } |  i i D{ ]3 } | | i | j o | t | |  i   n q ~ Sd  S(   N(	   s   appends   _[1]s   selfs   _tables   childrens   sts   names   newSymbolTables	   _filename(   s   selfs   names   _[1]s   st(    (    s   /usr/lib/python2.2/symtable.pys   __check_childreny s   	c    sD   ~  g  i  } |  i i D ] } | t | |  i   q ~ Sd  S(   N(   s   appends   _[1]s   selfs   _tables   childrens   sts   newSymbolTables	   _filename(   s   selfs   _[1]s   st(    (    s   /usr/lib/python2.2/symtable.pys   get_children~ s   (   s   __name__s
   __module__s   __init__s   __repr__s   get_types   get_ids   get_names
   get_linenos   is_optimizeds	   is_nesteds   has_childrens   has_execs   has_import_stars   get_identifierss   lookups   get_symbolss   _SymbolTable__check_childrens   get_children(    (    (    s   /usr/lib/python2.2/symtable.pys   SymbolTable4 s    	
c      sk    t  Z  e Z  e Z  e Z  e Z  d   Z  d   Z  d   Z	  d   Z
  d   Z RS(   Nc    s\     t  g  i } |  i   D ]. }  | |  i i |  o | |  n q ~  Sd  S(   N(	   s   tuples   appends   _[1]s   selfs   get_identifierss   idents	   test_funcs   _tables   symbols(   s   selfs	   test_funcs   _[1]s   ident(    (    s   /usr/lib/python2.2/symtable.pys   __idents_matching s    	c    s@     |  i t j o  |  i d    |  _ n  |  i Sd  S(   Nc    s    |  t @S(   N(   s   xs	   DEF_PARAM(   s   x(    (    s   /usr/lib/python2.2/symtable.pys   <lambda> s    (   s   selfs   _Function__paramss   Nones   _Function__idents_matching(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   get_parameters s   c    s@     |  i t j o  |  i d    |  _ n  |  i Sd  S(   Nc    s    |  t @S(   N(   s   xs	   DEF_BOUND(   s   x(    (    s   /usr/lib/python2.2/symtable.pys   <lambda> s    (   s   selfs   _Function__localss   Nones   _Function__idents_matching(   s   self(    (    s   /usr/lib/python2.2/symtable.pys
   get_locals s   c    sP     |  i t j o,  t t B   |  i   d    |  _ n  |  i Sd  S(   Nc    s    |    @S(   N(   s   xs   glob(   s   x(   s   glob(    s   /usr/lib/python2.2/symtable.pys   <lambda> s    (   s   selfs   _Function__globalss   Nones
   DEF_GLOBALs   DEF_FREE_GLOBALs   globs   _Function__idents_matching(   s   selfs   glob(    (   s   globs   /usr/lib/python2.2/symtable.pys   get_globals s   c    s=     |  i t j o  |  i t  |  _ n  |  i Sd  S(   N(   s   selfs   _Function__freess   Nones   _Function__idents_matchings   is_free(   s   self(    (    s   /usr/lib/python2.2/symtable.pys	   get_frees s   (   s   __name__s
   __module__s   Nones   _Function__paramss   _Function__localss   _Function__freess   _Function__globalss   _Function__idents_matchings   get_parameterss
   get_localss   get_globalss	   get_frees(    (    (    s   /usr/lib/python2.2/symtable.pys   Function s   					c      s     t  Z  e Z  d   Z RS(   Nc    sv     |  i t j oR  h  }  x' |  i i D ] }  d | | i <q/ W t | i	    |  _ n  |  i Sd  S(   Ni   (
   s   selfs   _Class__methodss   Nones   ds   _tables   childrens   sts   names   tuples   keys(   s   selfs   sts   d(    (    s   /usr/lib/python2.2/symtable.pys   get_methods s   	 	(   s   __name__s
   __module__s   Nones   _Class__methodss   get_methods(    (    (    s   /usr/lib/python2.2/symtable.pys   Class s   		c      s    t  Z  e d  Z  d   Z  d   Z  d   Z  d   Z  d   Z  d   Z	  d   Z
  d	   Z  d
   Z  d   Z  d   Z  d   Z  d   Z  d   Z  d   Z RS(   Nc    s2     | |  _  | |  _  | p f  |  _ d  S(   N(   s   names   selfs   _Symbol__names   flagss   _Symbol__flagss
   namespacess   _Symbol__namespaces(   s   selfs   names   flagss
   namespaces(    (    s   /usr/lib/python2.2/symtable.pys   __init__ s   c    s     d |  i Sd  S(   Ns   <symbol '%s'>(   s   selfs   _Symbol__name(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   __repr__ s   c    s     |  i Sd  S(   N(   s   selfs   _Symbol__name(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   get_name s   c    s     t  |  i t i @ Sd  S(   N(   s   bools   selfs   _Symbol__flagss	   _symtables   USE(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   is_referenced s   c    s     t  |  i t @ Sd  S(   N(   s   bools   selfs   _Symbol__flagss	   DEF_PARAM(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   is_parameter s   c    s)     t  |  i t @p |  i t @ Sd  S(   N(   s   bools   selfs   _Symbol__flagss
   DEF_GLOBALs   DEF_FREE_GLOBAL(   s   self(    (    s   /usr/lib/python2.2/symtable.pys	   is_global s   c    s     t  |  i t @ Sd  S(   N(   s   bools   selfs   _Symbol__flagss   DEF_STAR(   s   self(    (    s   /usr/lib/python2.2/symtable.pys	   is_vararg s   c    s     t  |  i t @ Sd  S(   N(   s   bools   selfs   _Symbol__flagss   DEF_DOUBLESTAR(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   is_keywordarg s   c    s     t  |  i t @ Sd  S(   N(   s   bools   selfs   _Symbol__flagss	   DEF_BOUND(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   is_local s   c    s`     |  i t t B@o |  i t t Bt B@o  d Sn  |  i t @o  d Sn  d Sd  S(   Ni   i    (   s   selfs   _Symbol__flagss   USEs   DEF_FREEs	   DEF_LOCALs	   DEF_PARAMs
   DEF_GLOBALs   DEF_FREE_CLASS(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   is_free s
   +c    s     t  |  i t @ Sd  S(   N(   s   bools   selfs   _Symbol__flagss
   DEF_IMPORT(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   is_imported s   c    s     t  |  i t @ Sd  S(   N(   s   bools   selfs   _Symbol__flagss	   DEF_LOCAL(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   is_assigned s   c    s     t  |  i t @ Sd  S(   N(   s   bools   selfs   _Symbol__flagss   DEF_INTUPLE(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   is_in_tuple s   c    s      t  |  i  Sd S(   s  Returns true if name binding introduces new namespace.

        If the name is used as the target of a function or class
        statement, this will be true.

        Note that a single name can be bound to multiple objects.  If
        is_namespace() is true, the name may also be bound to other
        objects, like an int or list, that does not introduce a new
        namespace.
        N(   s   bools   selfs   _Symbol__namespaces(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   is_namespace s   
c    s      |  i Sd S(   s.   Return a list of namespaces bound to this nameN(   s   selfs   _Symbol__namespaces(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   get_namespaces s   c    sA      t  |  i  d j o  t d  n  |  i d Sd S(   s   Returns the single namespace bound to this name.

        Raises ValueError if the name is bound to multiple namespaces.
        i   s$   name is bound to multiple namespacesi    N(   s   lens   selfs   _Symbol__namespacess
   ValueError(   s   self(    (    s   /usr/lib/python2.2/symtable.pys   get_namespace s   (   s   __name__s
   __module__s   Nones   __init__s   __repr__s   get_names   is_referenceds   is_parameters	   is_globals	   is_varargs   is_keywordargs   is_locals   is_frees   is_importeds   is_assigneds   is_in_tuples   is_namespaces   get_namespacess   get_namespace(    (    (    s   /usr/lib/python2.2/symtable.pys   Symbol s    	s   __main__i    i   s   exec(,   s   __doc__s	   _symtables   USEs
   DEF_GLOBALs	   DEF_LOCALs	   DEF_PARAMs   DEF_STARs   DEF_DOUBLESTARs   DEF_INTUPLEs   DEF_FREEs   DEF_FREE_GLOBALs   DEF_FREE_CLASSs
   DEF_IMPORTs	   DEF_BOUNDs   OPT_IMPORT_STARs   OPT_EXECs   OPT_BARE_EXECs   weakrefs   __all__s   symtables   SymbolTableFactorys   newSymbolTables   bools   is_frees   SymbolTables   Functions   Classs   Symbols   __name__s   oss   syss   opens   argvs   reads   srcs   paths   splits   mods   get_identifierss   idents   lookups   infos   is_locals   is_namespace(!   s   DEF_STARs   SymbolTableFactorys   USEs   srcs   infos   idents   OPT_EXECs   is_frees   newSymbolTables   DEF_FREEs   DEF_FREE_GLOBALs   syss	   DEF_PARAMs   symtables
   DEF_IMPORTs   mods   Functions   DEF_FREE_CLASSs   OPT_BARE_EXECs   __all__s	   DEF_LOCALs	   _symtables   Symbols   DEF_INTUPLEs   OPT_IMPORT_STARs   weakrefs
   DEF_GLOBALs   SymbolTables   bools   DEF_DOUBLESTARs	   DEF_BOUNDs   oss   Class(    (    s   /usr/lib/python2.2/symtable.pys   ? s*   dN!J, 	