Package com.sun.tools.corba.ee.idl
Class StructEntry
- java.lang.Object
-
- com.sun.tools.corba.ee.idl.SymtabEntry
-
- com.sun.tools.corba.ee.idl.StructEntry
-
- Direct Known Subclasses:
ExceptionEntry
public class StructEntry extends SymtabEntry
This is the symbol table entry for structs.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Vector<SymtabEntry>
_contained
private java.util.Vector<TypedefEntry>
_members
(package private) static StructGen
structGen
-
Fields inherited from class com.sun.tools.corba.ee.idl.SymtabEntry
includeStack, maxKey, setEmit
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
StructEntry()
protected
StructEntry(StructEntry that)
protected
StructEntry(SymtabEntry that, IDLID clone)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addContained(SymtabEntry entry)
void
addMember(TypedefEntry member)
Add a member to the member list.java.lang.Object
clone()
This is a shallow copy clonejava.util.Vector<SymtabEntry>
contained()
This is a vector of SymtabEntry's.void
generate(java.util.Hashtable symbolTable, java.io.PrintWriter stream)
Invoke the struct generator.Generator
generator()
Access the struct generator.java.util.Vector<TypedefEntry>
members()
This is a vector of TypedefEntry's.-
Methods inherited from class com.sun.tools.corba.ee.idl.SymtabEntry
comment, comment, container, container, dynamicVariable, dynamicVariable, emit, emit, enteringInclude, exitingInclude, fullName, getVariableKey, growVars, initDynamicVars, isReferencable, isReferencable, module, module, name, name, repositoryID, repositoryID, sourceFile, sourceFile, type, type, typeName, typeName
-
-
-
-
Field Detail
-
_members
private java.util.Vector<TypedefEntry> _members
-
_contained
private java.util.Vector<SymtabEntry> _contained
-
structGen
static StructGen structGen
-
-
Constructor Detail
-
StructEntry
protected StructEntry()
-
StructEntry
protected StructEntry(StructEntry that)
-
StructEntry
protected StructEntry(SymtabEntry that, IDLID clone)
-
-
Method Detail
-
clone
public java.lang.Object clone()
Description copied from class:SymtabEntry
This is a shallow copy clone- Overrides:
clone
in classSymtabEntry
-
generate
public void generate(java.util.Hashtable symbolTable, java.io.PrintWriter stream)
Invoke the struct generator.- Overrides:
generate
in classSymtabEntry
- Parameters:
symbolTable
- the symbol table is a hash table whose key is a fully qualified type name and whose value is a SymtabEntry or a subclass of SymtabEntry.stream
- the stream to which the generator should sent its output.- See Also:
SymtabEntry
-
generator
public Generator generator()
Access the struct generator.- Overrides:
generator
in classSymtabEntry
- Returns:
- an object which implements the StructGen interface.
- See Also:
StructGen
-
addMember
public void addMember(TypedefEntry member)
Add a member to the member list.- Parameters:
member
- member to add to list
-
members
public java.util.Vector<TypedefEntry> members()
This is a vector of TypedefEntry's. In this context, only the name, type, and arrayInfo fields hold any meaning.- Returns:
- a
Vector
of the members of the stuct
-
addContained
public void addContained(SymtabEntry entry)
-
contained
public java.util.Vector<SymtabEntry> contained()
This is a vector of SymtabEntry's. It itemizes any types which this struct contains. It is different than the member list. For example:struct A { long x; Struct B { long a; long b; } y; }
Struct B is contained within struct A. The members vector will contain entries for x and y.- Returns:
- a
Vector
of theSymtabEntry
in the Struct
-
-