View Javadoc
1   /*
2    * Copyright (c) 1999, 2004, Oracle and/or its affiliates. All rights reserved.
3    * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4    *
5    * This code is free software; you can redistribute it and/or modify it
6    * under the terms of the GNU General Public License version 2 only, as
7    * published by the Free Software Foundation.  Oracle designates this
8    * particular file as subject to the "Classpath" exception as provided
9    * by Oracle in the LICENSE file that accompanied this code.
10   *
11   * This code is distributed in the hope that it will be useful, but WITHOUT
12   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13   * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14   * version 2 for more details (a copy is included in the LICENSE file that
15   * accompanied this code).
16   *
17   * You should have received a copy of the GNU General Public License version
18   * 2 along with this work; if not, write to the Free Software Foundation,
19   * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20   *
21   * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22   * or visit www.oracle.com if you need additional information or have any
23   * questions.
24   */
25  /*
26   * COMPONENT_NAME: idl.parser
27   *
28   * ORIGINS: 27
29   *
30   * Licensed Materials - Property of IBM
31   * 5639-D57 (C) COPYRIGHT International Business Machines Corp. 1997, 1999
32   * RMI-IIOP v1.0
33   *
34   */
35  
36  package com.sun.tools.corba.se.idl;
37  
38  // NOTES:
39  
40  /**
41   * This factory constructs the default symbol table entries, namely,
42   * those declared within the package com.sun.tools.corba.se.idl.
43   **/
44  public class DefaultSymtabFactory implements SymtabFactory
45  {
46    public AttributeEntry attributeEntry ()
47    {
48      return new AttributeEntry ();
49    } // attributeEntry
50  
51    public AttributeEntry attributeEntry (InterfaceEntry container, IDLID id)
52    {
53      return new AttributeEntry (container, id);
54    } // attributeEntry
55  
56    public ConstEntry constEntry ()
57    {
58      return new ConstEntry ();
59    } // constEntry
60  
61    public ConstEntry constEntry (SymtabEntry container, IDLID id)
62    {
63      return new ConstEntry (container, id);
64    } // constEntry
65  
66    public NativeEntry nativeEntry ()
67    {
68      return new NativeEntry ();
69    } // interfaceEntry
70  
71    public NativeEntry nativeEntry (SymtabEntry container, IDLID id)
72    {
73      return new NativeEntry (container, id);
74    } // interfaceEntry
75  
76    public EnumEntry enumEntry ()
77    {
78      return new EnumEntry ();
79    } // enumEntry
80  
81    public EnumEntry enumEntry (SymtabEntry container, IDLID id)
82    {
83      return new EnumEntry (container, id);
84    } // enumEntry
85  
86    public ExceptionEntry exceptionEntry ()
87    {
88      return new ExceptionEntry ();
89    } // exceptionEntry
90  
91    public ExceptionEntry exceptionEntry (SymtabEntry container, IDLID id)
92    {
93      return new ExceptionEntry (container, id);
94    } // exceptionEntry
95  
96    public ForwardEntry forwardEntry ()
97    {
98      return new ForwardEntry ();
99    } // forwardEntry
100 
101   public ForwardEntry forwardEntry (ModuleEntry container, IDLID id)
102   {
103     return new ForwardEntry (container, id);
104   } // forwardEntry
105 
106   public ForwardValueEntry forwardValueEntry ()
107   {
108     return new ForwardValueEntry ();
109   } // forwardValueEntry
110 
111   public ForwardValueEntry forwardValueEntry (ModuleEntry container, IDLID id)
112   {
113     return new ForwardValueEntry (container, id);
114   } // forwardValueEntry
115 
116   public IncludeEntry includeEntry ()
117   {
118     return new IncludeEntry ();
119   } // includeEntry
120 
121   public IncludeEntry includeEntry (SymtabEntry container)
122   {
123     return new IncludeEntry (container);
124   } // includeEntry
125 
126   public InterfaceEntry interfaceEntry ()
127   {
128     return new InterfaceEntry ();
129   } // interfaceEntry
130 
131   public InterfaceEntry interfaceEntry (ModuleEntry container, IDLID id)
132   {
133     return new InterfaceEntry (container, id);
134   } // interfaceEntry
135 
136   public ValueEntry valueEntry ()
137   {
138     return new ValueEntry ();
139   } // valueEntry
140 
141   public ValueEntry valueEntry (ModuleEntry container, IDLID id)
142   {
143     return new ValueEntry (container, id);
144   } // valueEntry
145 
146   public ValueBoxEntry valueBoxEntry ()
147   {
148     return new ValueBoxEntry ();
149   } // valueBoxEntry
150 
151   public ValueBoxEntry valueBoxEntry (ModuleEntry container, IDLID id)
152   {
153     return new ValueBoxEntry (container, id);
154   } // valueBoxEntry
155 
156   public MethodEntry methodEntry ()
157   {
158     return new MethodEntry ();
159   } // methodEntry
160 
161   public MethodEntry methodEntry (InterfaceEntry container, IDLID id)
162   {
163     return new MethodEntry (container, id);
164   } // methodEntry
165 
166   public ModuleEntry moduleEntry ()
167   {
168     return new ModuleEntry ();
169   } // moduleEntry
170 
171   public ModuleEntry moduleEntry (ModuleEntry container, IDLID id)
172   {
173     return new ModuleEntry (container, id);
174   } // moduleEntry
175 
176   public ParameterEntry parameterEntry ()
177   {
178     return new ParameterEntry ();
179   } // parameterEntry
180 
181   public ParameterEntry parameterEntry (MethodEntry container, IDLID id)
182   {
183     return new ParameterEntry (container, id);
184   } // parameterEntry
185 
186   public PragmaEntry pragmaEntry ()
187   {
188     return new PragmaEntry ();
189   } // pragmaEntry
190 
191   public PragmaEntry pragmaEntry (SymtabEntry container)
192   {
193     return new PragmaEntry (container);
194   } // pragmaEntry
195 
196   public PrimitiveEntry primitiveEntry ()
197   {
198     return new PrimitiveEntry ();
199   } // primitiveEntry
200 
201   /** "name" can be, but is not limited to, the primitive idl type names:
202       'char', 'octet', 'short', 'long', etc.  The reason it is not limited
203       to these is that, as an extender, you may wish to override these names.
204       For instance, when generating Java code, octet translates to byte, so
205       there is an entry in Compile.overrideNames:  <"octet", "byte"> and a
206       PrimitiveEntry in the symbol table for "byte". */
207   public PrimitiveEntry primitiveEntry (String name)
208   {
209     return new PrimitiveEntry (name);
210   } // primitiveEntry
211 
212   public SequenceEntry sequenceEntry ()
213   {
214     return new SequenceEntry ();
215   } // sequenceEntry
216 
217   public SequenceEntry sequenceEntry (SymtabEntry container, IDLID id)
218   {
219     return new SequenceEntry (container, id);
220   } // sequenceEntry
221 
222   public StringEntry stringEntry ()
223   {
224     return new StringEntry ();
225   } // stringEntry
226 
227   public StructEntry structEntry ()
228   {
229     return new StructEntry ();
230   } // structEntry
231 
232   public StructEntry structEntry (SymtabEntry container, IDLID id)
233   {
234     return new StructEntry (container, id);
235   } // structEntry
236 
237   public TypedefEntry typedefEntry ()
238   {
239     return new TypedefEntry ();
240   } // typedefEntry
241 
242   public TypedefEntry typedefEntry (SymtabEntry container, IDLID id)
243   {
244     return new TypedefEntry (container, id);
245   } // typedefEntry
246 
247   public UnionEntry unionEntry ()
248   {
249     return new UnionEntry ();
250   } // unionEntry
251 
252   public UnionEntry unionEntry (SymtabEntry container, IDLID id)
253   {
254     return new UnionEntry (container, id);
255   } // unionEntry
256 
257 } // interface DefaultSymtabFactory