Class InterfaceEntry

java.lang.Object
com.sun.tools.corba.ee.idl.SymtabEntry
com.sun.tools.corba.ee.idl.InterfaceEntry
All Implemented Interfaces:
InterfaceType
Direct Known Subclasses:
ValueEntry

public class InterfaceEntry extends SymtabEntry implements InterfaceType
This is the symbol table entry for interfaces.
  • Field Details

  • Constructor Details

    • InterfaceEntry

      protected InterfaceEntry()
    • InterfaceEntry

      protected InterfaceEntry(InterfaceEntry that)
    • InterfaceEntry

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

    • isAbstract

      public boolean isAbstract()
    • isLocal

      public boolean isLocal()
    • isLocalServant

      public boolean isLocalServant()
    • isLocalSignature

      public boolean isLocalSignature()
    • 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 interface 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 interface generator.
      Overrides:
      generator in class SymtabEntry
      Returns:
      an object which implements the InterfaceGen interface.
      See Also:
    • addDerivedFrom

      public void addDerivedFrom(SymtabEntry derivedFrom)
      Add an InterfaceEntry to the list of interfaces which this interface is derivedFrom. During parsing, the parameter to this method COULD be a ForwardEntry, but when parsing is complete, calling derivedFrom will return a vector which only contains InterfaceEntry's.
      Parameters:
      derivedFrom - a ForwardEntry or InterfaceEntry
    • derivedFrom

      public Vector<SymtabEntry> derivedFrom()
      This method returns a vector of InterfaceEntry's.
      Returns:
      a Vector of interfaces which this interface is derived from
      See Also:
    • addDerivedFromName

      public void addDerivedFromName(String name)
      Add to the list of derivedFrom names.
    • derivedFromNames

      public Vector<String> derivedFromNames()
      This method returns a vector of Strings, each of which is a fully qualified name of an interface. This vector corresponds to the derivedFrom vector. The first element of this vector is the name of the first element of the derivedFrom vector, etc.
      Returns:
      Vector of Strings
    • addMethod

      public void addMethod(MethodEntry method)
      Add a method/attribute to the list of methods.
      Parameters:
      method - method or attribute to add
    • methods

      public Vector<MethodEntry> methods()
      This is a vector of MethodEntry's. These are the methods and attributes contained within this Interface.
      Returns:
      Vector of MethodEntry
    • addContained

      public void addContained(SymtabEntry entry)
      Add a symbol table entry to this interface's contained vector.
      Parameters:
      entry - new SymtabEntry to add
    • contained

      public Vector<SymtabEntry> contained()
      This is a vector of SymtabEntry's. Valid entries in this vector are: AttributeEntry, ConstEntry, EnumEntry, ExceptionEntry, MethodEntry, StructEntry, NativeEntry, TypedefEntry, UnionEntry. Note that the methods vector is a subset of this vector.
      Returns:
      Vector of SymtabEntry
      See Also:
    • methodsAddElement

      void methodsAddElement(MethodEntry method, Scanner scanner)
    • addToForwardedAllMethods

      void addToForwardedAllMethods(MethodEntry method, Scanner scanner)
    • verifyMethod

      private boolean verifyMethod(MethodEntry method, Scanner scanner, boolean clash)
    • derivedFromAddElement

      void derivedFromAddElement(SymtabEntry e, Scanner scanner)
    • addParentType

      void addParentType(SymtabEntry e, Scanner scanner)
    • lookForForwardEntrys

      private void lookForForwardEntrys(Scanner scanner, InterfaceEntry entry)
    • replaceForwardDecl

      public boolean replaceForwardDecl(ForwardEntry oldEntry, InterfaceEntry newEntry)
    • addToDerivers

      private void addToDerivers(ForwardEntry forward)
    • state

      public Vector<InterfaceState> state()
      This method returns a vector of the elements in the state block. If it is null, this is not a stateful interface. If it is non-null, but of zero length, then it is still stateful; it has no state entries itself, but it has an ancestor which does.
      Returns:
      Vector of InterfaceState
    • initState

      public void initState()
    • addStateElement

      public void addStateElement(InterfaceState state, Scanner scanner)
    • getInterfaceType

      public int getInterfaceType()
      Specified by:
      getInterfaceType in interface InterfaceType
    • setInterfaceType

      public void setInterfaceType(int type)
      Specified by:
      setInterfaceType in interface InterfaceType
    • allMethods

      public Vector<MethodEntry> allMethods()
      Get the allMethods vector.
      Returns:
      Vector of all methods in the interface
      See Also: