Class UnionEntry

java.lang.Object
com.sun.tools.corba.se.idl.SymtabEntry
com.sun.tools.corba.se.idl.UnionEntry

public class UnionEntry extends SymtabEntry
This is the symbol table entry for unions.
  • Constructor Details

    • UnionEntry

      protected UnionEntry()
    • UnionEntry

      protected UnionEntry(UnionEntry that)
    • UnionEntry

      protected UnionEntry(SymtabEntry that, IDLID clone)
  • Method Details

    • clone

      public Object clone()
      Description copied from class: SymtabEntry
      This is a shallow copy clone
      Overrides:
      clone in class SymtabEntry
    • generate

      public void generate(Hashtable symbolTable, PrintWriter stream)
      Invoke the union generator.
      Overrides:
      generate in class SymtabEntry
      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:
    • generator

      public Generator generator()
      Access the union generator.
      Overrides:
      generator in class SymtabEntry
      Returns:
      an object which implements the Generator interface.
      See Also:
    • addBranch

      public void addBranch(UnionBranch branch)
    • branches

      public Vector branches()
      This is a vector of UnionBranch's.
    • defaultBranch

      public void defaultBranch(TypedefEntry branch)
      This TypedefEntry describes the type and name for the default branch. Like the entries in the branches vector, only the type and name fields are pertinent.
    • defaultBranch

      public TypedefEntry defaultBranch()
      This TypedefEntry describes the type and name for the default branch. Like the entries in the branches vector, only the type and name fields are pertinent.
    • addContained

      public void addContained(SymtabEntry entry)
    • contained

      public Vector contained()
      This is a vector of SymtabEntry's. It itemizes any types which this union contains. For example:
            union A
            switch (long)
            {
              case 0: long x;
              case 1:
                Struct B
                {
                  long a;
                  long b;
                } y;
            }
            
      Struct B is contained within union A.