1 20 21 package org.jacorb.idl; 22 23 27 28 29 public class SimpleDeclarator 30 extends Declarator 31 { 32 public SimpleDeclarator( int num ) 33 { 34 super( num ); 35 } 36 37 public String name() 38 { 39 return name; 40 } 41 42 44 45 public void escapeName() 46 { 47 if( !name.startsWith( "_" ) && 48 lexer.strictJavaEscapeCheck( name ) ) 49 { 50 name = "_" + name; 51 } 52 } 53 54 public void parse() 55 { 56 try 58 { 59 NameTable.define( full_name(), "declarator" ); 60 } 61 catch( NameAlreadyDefined p ) 62 { 63 parser.error( "Declarator name " + full_name() + 64 " already declared in this scope.", token ); 65 } 66 } 67 68 public void setEnclosingSymbol( IdlSymbol s ) 69 { 70 if( enclosing_symbol != null && enclosing_symbol != s ) 71 throw new RuntimeException ( "Compiler Error: trying to reassign container for " + name ); 72 enclosing_symbol = s; 73 } 74 75 public IdlSymbol getEnclosingSymbol() 76 { 77 return enclosing_symbol; 78 } 79 80 public void setPackage( String s ) 81 { 82 s = parser.pack_replace( s ); 83 if( pack_name.length() > 0 ) 84 pack_name = s + "." + pack_name; 85 else 86 pack_name = s; 87 } 88 89 String full_name() 90 { 91 if( name.length() == 0 ) 92 return null; 93 if( pack_name.length() > 0 ) 94 return pack_name + "." + name; 95 else 96 return name; 97 } 98 99 public String toString() 100 { 101 return name; 102 } 103 } 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | Popular Tags |