-í
_Ôj<c       sa    d  Z  + - d k l Z l Z l Z l Z . d k l Z 0 d k Z d k	 Z	 2 d k
 Z
 3 e
 Z 5 d „  Z = d „  Z U d „  Z ^ d „  Z g d „  Z s d	 „  Z ‚ d
 „  Z š d „  Z ¤ d „  Z ² d „  Z Û d „  Z d „  Z .d „  Z ed „  Z pd „  Z d „  Z ¦d „  Z ²d „  Z ¿h  d e i <d e i <d e i  <d e i! <d e i" <d e i# <d e i$ <d e i% <d e i& <d e i' <d  e i( <d! e i) <d" e i* <d# e i+ <d$ e i, <d% e i- <d& e i. <Z/ Ód' „  Z0 Öd( „  Z1 Üd) „  Z2 âd* „  Z3 íd+ „  Z4 òd, „  Z5 d S(-   s   Dumps the AST tree(   s   idlasts   idltypes   idlutils   output(   s   tyutilNc    s:   5 6 d GH8 t  i t i d ƒ t _ : |  i t ƒ d  S(   Ns   Showing the AST tree: i   (   s   outputs   Streams   syss   stdouts   selfs   sts   trees   accept(   s   trees   args(    (    s   ./showast.pys   run5 s   c    sØ  = > t  |  t i ƒ o ? d |  i ƒ  Sn§@ t  |  t i ƒ o A d |  i ƒ  Sn|B t  |  t i ƒ o C d |  i ƒ  SnQD t  |  t i ƒ o E d Sn0F t  |  t i ƒ o G d SnH t  |  t i	 ƒ o I d |  i ƒ  Snä J t  |  t i
 ƒ o K d |  i ƒ  Sn¹ L t  |  t i ƒ o M d |  i ƒ  SnŽ N t  |  t i ƒ o O d	 |  i ƒ  Snc P t  |  t i ƒ o! Q d
 t i |  i ƒ  d ƒ Sn, R t  |  t i ƒ o S d |  i ƒ  Sn d  S(   Ns   Module s   Forward s
   Interface s   Const s   Typedef s   Struct s
   Exception s   Union s   Enum s   Attributes s    s
   Operation (   s
   isinstances   nodes   asts   Modules
   identifiers   Forwards	   Interfaces   Consts   Typedefs   Structs	   Exceptions   Unions   Enums	   Attributes   strings   joins   identifierss	   Operation(   s   node(    (    s   ./showast.pys   idNode= s,   !c    sJ   U V |  i ƒ  } W t i | ƒ } X t i d [ d | \ d | ƒd  S(   Ns/   IDL identifier  = @idl@
CXX identifier  = @cxx@s   idls   cxx(   s   nodes
   identifiers   tyutils   mapIDs   cxx_identifiers   sts   out(   s   nodes
   identifiers   cxx_identifier(    (    s   ./showast.pys   showIDU s
   	c    sG   ^ _ t  i |  ƒ } ` | o a t i d ƒ n d t i d ƒ d  S(   Ns   Variable length types   Fixed length type(   s   tyutils   isVariableDecls   nodes   variables   sts   out(   s   nodes   variable(    (    s   ./showast.pys   showVariable^ s   
c    s~   g h t  i d ƒ j t  i ƒ  k t  i d ƒ m x' |  i ƒ  Dm ] } n | i t ƒ q@ Wo t  i ƒ  p t  i d ƒ d  S(   Ns   AST {s   declarations:s   } /* AST */(	   s   sts   outs
   inc_indents   nodes   declarationss   ns   accepts   selfs
   dec_indent(   s   nodes   n(    (    s   ./showast.pys   visitASTg s    	c    s¼   s t t  i d ƒ v t  i ƒ  w t |  ƒ x t  i d d t i |  i ƒ  ƒ ƒz t  i d ƒ | x' |  i ƒ  D| ] } } | i
 t ƒ qr W~ t  i ƒ   t  i d d |  i ƒ  ƒd  S(   Ns   module {s   guard name = @guard@s   guards   definitions:s   } /* module @identifier@ */s
   identifier(   s   sts   outs
   inc_indents   showIDs   nodes   tyutils	   guardNames
   scopedNames   definitionss   ns   accepts   selfs
   dec_indents
   identifier(   s   nodes   n(    (    s   ./showast.pys   visitModules s   % 	c    sü   ‚ ƒ t  i d ƒ … t  i ƒ  † t |  ƒ ‡ t |  ƒ ˆ t  i d d t |  i ƒ  ƒ ƒŠ t  i d ƒ Œ t  i ƒ  Ž x' |  i ƒ  DŽ ] }  | i
 t ƒ q‰ W‘ t  i ƒ  ’ t  i d d |  i ƒ  ƒ• t  i ƒ  – t  i d d |  i ƒ  ƒd  S(   Ns   interface {s   inherits = @inherits@s   inheritss
   contents {s*   } /* contents of interface @identifier@ */s
   identifiers   } /* interface @identifier@ */(   s   sts   outs
   inc_indents   showIDs   nodes   showVariables   reprs   inheritss   contentss   ns   accepts   selfs
   dec_indents
   identifier(   s   nodes   n(    (    s   ./showast.pys   visitInterface‚ s   " 	c    sN   š › t  i d ƒ  t  i ƒ  ž t |  ƒ Ÿ t  i ƒ    t  i d ƒ d  S(   Ns	   forward {s   }(   s   sts   outs
   inc_indents   showIDs   nodes
   dec_indent(   s   node(    (    s   ./showast.pys   visitForwardš s
   c    sŒ   ¤ ¥ t  i d ƒ § t  i ƒ  ¨ t t ƒ © |  i ƒ  i t ƒ ª t  i d d t	 d t
 |  i ƒ  ƒ ƒ­ t  i ƒ  ® t  i d ƒ d  S(   Ns   const {s   type  = @type@
value = @value@s   types   values   } /* const */(   s   sts   outs
   inc_indents   showIDs   nodess   nodes	   constTypes   accepts   selfs   __result_types   reprs   values
   dec_indent(   s   node(    (    s   ./showast.pys
   visitConst¤ s   (c  
  sÔ  ² · t  i d ƒ ¹ t  i ƒ  º t  i d d t |  i ƒ  ƒ ƒ¼ t i |  i ƒ  ƒ } ½ | i	 t
 ƒ ¾ t  i d d t ƒÀ |  i ƒ  oZ Á t  i d ƒ Ã t  i ƒ  Ä |  i ƒ  i ƒ  i	 t
 ƒ Å t  i ƒ  Æ t  i d ƒ n É |  i ƒ  i	 t
 ƒ Ê t } Ë t  i d ƒ Í t  i ƒ  Î xj |  i ƒ  DÎ ]Y } Ï | i	 t
 ƒ Ð t i |  i ƒ  ƒ } Ñ t  i d	 Ó d
 | d t d t | ƒ ƒq6WÔ t  i ƒ  Õ t  i d ƒ × t  i ƒ  Ø t  i d ƒ d  S(   Ns	   typedef {s   constrType = @constrType@s
   constrTypes   deref Type = @deref@s   derefs   decl {s   } /* decl */s   declarators {s   @type@ @decl@  dims = @dims@s   types   decls   dimss   } /* declarators */s   } /* typedef */(   s   sts   outs
   inc_indents   reprs   nodes
   constrTypes   tyutils   derefs	   aliasTypes   accepts   selfs   __result_types   decls
   dec_indents   types   declaratorss   ds   typeDimss   dimss   __result_declarator(   s   nodes   ds   dimss   derefs   type(    (    s   ./showast.pys   visitTypedef² s4   "	 	#c  	  s  Û Ü t  i d ƒ Þ t  i ƒ  ß t |  ƒ à t |  ƒ á x |  i ƒ  Dá ]} â | i ƒ  oZ ã t  i d ƒ æ t  i ƒ  ç | i	 ƒ  i
 ƒ  i t ƒ è t  i ƒ  é t  i d ƒ n ë | i	 ƒ  i t ƒ ì t i } í t i | i	 ƒ  ƒ } î t i | i	 ƒ  ƒ d } ï t i | i	 ƒ  d ƒ } ð t  i d ƒ ò t  i ƒ  ó t  i d ÷ d | ø d	 | ù d
 | ƒú xC | i ƒ  Dú ]2 } û | i t ƒ ü t  i d d | d t ƒq†Wþ t  i ƒ  ÿ t  i d ƒ qJ Wt  i ƒ  t  i d d |  i ƒ  ƒd  S(   Ns   struct {s   constrType = 1
decl {s   } /* decl */i   s   Members   declarators { sR   principalID       = @id@
objref template   = @objref@
operation In type = @operin@s   ids   objrefs   operins   @type@ @decl@s   types   decls   } /* declarators */s   } /* struct @identifier@ */s
   identifier(   s   sts   outs
   inc_indents   showIDs   nodes   showVariables   memberss   ms
   constrTypes
   memberTypes   decls   accepts   selfs
   dec_indents   __result_types   types   tyutils   principalIDs   operationArgumentTypes   opINtypes   objRefTemplates   objrefTemplates   declaratorss   ds   __result_declarators
   identifier(   s   nodes   ds   ms   principalIDs   objrefTemplates   opINtypes   type(    (    s   ./showast.pys   visitStructÛ s>    			 	 c    s“  t  i d ƒ 
t  i ƒ  t |  ƒ t |  ƒ x&|  i ƒ  D]} | i ƒ  oZ t  i d ƒ t  i ƒ  | i	 ƒ  i
 ƒ  i t ƒ t  i ƒ  t  i d ƒ n | i	 ƒ  i t ƒ t i } t  i d ƒ t  i ƒ  xC | i ƒ  D]2 } | i t ƒ t  i d d | d t ƒqW!t  i ƒ  "t  i d ƒ qJ W&t  i ƒ  't  i d	 d
 |  i ƒ  ƒd  S(   Ns   exception {s   constrType = 1
decl {s   } /* decl */s   declarators {s   @type@ @decl@s   types   decls   } /* declarators */s   } /* exception @identifier@ */s
   identifier(   s   sts   outs
   inc_indents   showIDs   nodes   showVariables   memberss   ms
   constrTypes
   memberTypes   decls   accepts   selfs
   dec_indents   __result_types   types   declaratorss   ds   __result_declarators
   identifier(   s   nodes   ds   types   m(    (    s   ./showast.pys   visitExceptions0    	 	 c    sz  ./|  i ƒ  or 1t i i d 3d |  i ƒ  ƒ4t i i ƒ  5|  i ƒ  i ƒ  i	 t ƒ 6t i i d ƒ 7t i i
 nK :|  i ƒ  i	 t ƒ ;t i } =t i i d @d |  i ƒ  d | ƒBt |  ƒ Dx|  i ƒ  DD]p} E| i ƒ  o@ Ft i i ƒ  G| i ƒ  i ƒ  i	 t ƒ Ht i i
 ƒ  n Jx® | i ƒ  DJ] } K| i ƒ  o Lt i i d ƒ nq O| i ƒ  t i j o& Pd t i | i ƒ  i ƒ  ƒ } n Rt | i ƒ  ƒ } Tt i i d Vd	 | ƒqUWX| i ƒ  i	 t ƒ Yt i } Z| i ƒ  i	 t ƒ [t i } ]t i i d
 `d | d | ƒqì Wbt i i d ƒ d  S(   Ns   union @id@ switch (s   ids   ) {s   union @id@ switch (@stype@) {s   stypes   default:s   ::s     case @lv@:s   lvs       @type@ @decl@;s   types   decls   };(    s   nodes
   constrTypes   selfs   sts   outs
   identifiers
   inc_indents
   switchTypes   decls   accepts
   dec_indents   __result_types   stypes   showVariables   casess   cs   caseTypes   labelss   ls   defaults	   labelKinds   idltypes   tk_enums   idlutils
   ccolonNames   values
   scopedNames   lvs   strs   types
   declarators   __result_declarator(   s   nodes   decls   cs   ls   lvs   stypes   type(    (    s   ./showast.pys
   visitUnion.sD    	 	&c    s€   efg  } gx- |  i ƒ  Dg] } g| i | i ƒ  ƒ q Wit i | d ƒ } kt	 i
 i d nd |  i ƒ  d | ƒd  S(   Ns   , s   enum @id@ {@enums@};s   ids   enums(   s   enumls   nodes   enumeratorss   es   appends
   identifiers   strings   joins   enumss   selfs   sts   out(   s   nodes   es   enumls   enums(    (    s   ./showast.pys	   visitEnumes   	 	 c    s’   pq|  i ƒ  o rd } n
 td } v|  i ƒ  i t ƒ wt i } yt i |  i	 ƒ  d ƒ } {t i i d ~d | d | d | ƒd  S(   Ns	   readonly s    s   , s!   @readonly@attribute @type@ @ids@;s   readonlys   types   ids(   s   nodes   readonlys   attrTypes   accepts   selfs   __result_types   types   strings   joins   identifierss   idss   sts   out(   s   nodes   readonlys   types   ids(    (    s   ./showast.pys   visitAttributeps   	c    só  ‚|  i ƒ  o ƒd } n
 …d } ‡|  i ƒ  i t ƒ ˆt i } Šg  } ‹x¯ |  i ƒ  D‹]ž } Œ| i
 ƒ  o
 | i ƒ  o Œd } n' | i
 ƒ  o d } n
 Žd } | i ƒ  i t ƒ t i }	 ‘| i | d |	 d | i ƒ  ƒ qd W“t i | d ƒ } •t |  i ƒ  ƒ d j oo –g  }
 —x? |  i ƒ  D—]. } ˜t i | i ƒ  ƒ } ™|
 i | ƒ qSW›d	 t i |
 d ƒ d
 } n
 d } Ÿt i i d ¢d | d | d |  i ƒ  £d | d | ƒd  S(   Ns   oneway s    s   inouts   ins   outs    s   , i    s	    raises (s   )s'   @oneway@@rtype@ @id@(@params@)@raises@;s   oneways   rtypes   ids   paramss   raises(   s   nodes   oneways
   returnTypes   accepts   selfs   __result_types   rtypes   paramls
   parameterss   ps   is_ins   is_outs   inouts	   paramTypes   types   appends
   identifiers   strings   joins   paramss   lens   raisess   raisels   rs   idlutils
   ccolonNames
   scopedNames   enames   sts   out(   s   nodes   enames   rtypes   paramls   ps   rs   paramss   raisess   oneways   types   raisels   inout(    (    s   ./showast.pys   visitOperations8   		 	  	*	 	!	c    sl   ¦§|  i ƒ  g } ¨x5 |  i ƒ  D¨]$ } ©| i d t | ƒ d ƒ q% W«t i | d ƒ t	 _
 d  S(   Ns   [s   ]s    (   s   nodes
   identifiers   ls   sizess   ss   appends   strs   strings   joins   selfs   __result_declarator(   s   nodes   ss   l(    (    s   ./showast.pys   visitDeclarator¦s
    	"c    sí   ²³t  |  t i ƒ o ´d |  i ƒ  d Sn] µt  |  t i ƒ o ¶d |  i ƒ  d Sn. ·t  |  t i ƒ o ¸d |  i ƒ  } n ºg  } »x5 |  i ƒ  D»]$ } »| i
 d t | ƒ d ƒ q§ W¼| t i | d ƒ Sd  S(   Ns   (SimpleTypedefDeclarator s   )s   (SimpleDeclarator s   (ArrayTypedefDeclarator s   [s   ]s    (   s
   isinstances   decls   asts   SimpleTypedefDeclarators
   identifiers   SimpleDeclarators   ArrayTypedefDeclarators   texts   sizess   ss   appends   strs   strings   join(   s   decls   ss   sizess   text(    (    s   ./showast.pys   declaratorToString²s   	 	 "s   voids   shorts   longs   unsigned shorts   unsigned longs   floats   doubles   booleans   chars   octets   anys   CORBA::TypeCodes   CORBA::Principals	   long longs   unsigned long longs   long doubles   wcharc    s    ÓÔt  i |  i ƒ  t  _ d  S(   N(   s   selfs   ttsMaps   types   kinds   __result_type(   s   type(    (    s   ./showast.pys   visitBaseTypeÓs   c    sM   Ö×|  i ƒ  d j o Ød t _ n! Úd t |  i ƒ  ƒ d t _ d  S(   Ni    s   strings   string<s   >(   s   types   bounds   selfs   __result_types   str(   s   type(    (    s   ./showast.pys   visitStringTypeÖs   c    sM   ÜÝ|  i ƒ  d j o Þd t _ n! àd t |  i ƒ  ƒ d t _ d  S(   Ni    s   wstrings   wstring<s   >(   s   types   bounds   selfs   __result_types   str(   s   type(    (    s   ./showast.pys   visitWStringTypeÜs   c    s™   âã|  i ƒ  i t ƒ ä|  i ƒ  d j o åd t i d t _ n, çd t i d t |  i ƒ  ƒ d t _ ét i d t i |  ƒ t _ d  S(   Ni    s	   sequence<s   >s   , s      sequence template = (	   s   types   seqTypes   accepts   selfs   bounds   __result_types   strs   tyutils   sequenceTemplate(   s   type(    (    s   ./showast.pys   visitSequenceTypeâs
   +c    s;   íîd t  |  i ƒ  ƒ d t  |  i ƒ  ƒ d t _ d  S(   Ns   fixed <s   , s   >(   s   strs   types   digitss   scales   selfs   __result_type(   s   type(    (    s   ./showast.pys   visitFixedTypeís   c    s%   òót  |  i ƒ  i ƒ  ƒ t _ d  S(   N(   s   reprs   types   decls
   scopedNames   selfs   __result_type(   s   type(    (    s   ./showast.pys   visitDeclaredTypeòs   (6   s   __doc__s   omniidls   idlasts   idltypes   idlutils   outputs   omniidl_be.cxxs   tyutils   syss   strings   showasts   selfs   runs   idNodes   showIDs   showVariables   visitASTs   visitModules   visitInterfaces   visitForwards
   visitConsts   visitTypedefs   visitStructs   visitExceptions
   visitUnions	   visitEnums   visitAttributes   visitOperations   visitDeclarators   declaratorToStrings   tk_voids   tk_shorts   tk_longs	   tk_ushorts   tk_ulongs   tk_floats	   tk_doubles
   tk_booleans   tk_chars   tk_octets   tk_anys   tk_TypeCodes   tk_Principals   tk_longlongs   tk_ulonglongs   tk_longdoubles   tk_wchars   ttsMaps   visitBaseTypes   visitStringTypes   visitWStringTypes   visitSequenceTypes   visitFixedTypes   visitDeclaredType("   s   showIDs   visitDeclarators   runs   strings   visitOperations   declaratorToStrings   visitForwards   visitSequenceTypes   visitInterfaces   idNodes   showasts   visitStringTypes   visitAttributes   ttsMaps
   visitUnions   idlutils   idlasts   idltypes   visitBaseTypes   syss   visitExceptions   visitWStringTypes   visitModules   showVariables   selfs   visitASTs   visitStructs   visitDeclaredTypes   visitFixedTypes
   visitConsts   outputs   visitTypedefs	   visitEnums   tyutil(    (    s   ./showast.pys   ?+ s<   "			
),'7%Õ