Package com.sun.tools.corba.ee.idl
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
This is the symbol table entry for interfaces.
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) Vector
<MethodEntry> private Vector
<SymtabEntry> private Vector
<SymtabEntry> private int
private Vector
<MethodEntry> private Vector
<InterfaceState> (package private) Vector
<InterfaceEntry> (package private) static InterfaceGen
Fields inherited from class com.sun.tools.corba.ee.idl.SymtabEntry
includeStack, maxKey, setEmit
Fields inherited from interface com.sun.tools.corba.ee.idl.InterfaceType
ABSTRACT, LOCAL, LOCAL_SIGNATURE_ONLY, LOCALSERVANT, NORMAL
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
protected
InterfaceEntry
(InterfaceEntry that) protected
InterfaceEntry
(SymtabEntry that, IDLID clone) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addContained
(SymtabEntry entry) Add a symbol table entry to this interface's contained vector.void
addDerivedFrom
(SymtabEntry derivedFrom) Add an InterfaceEntry to the list of interfaces which this interface is derivedFrom.void
addDerivedFromName
(String name) Add to the list of derivedFrom names.void
addMethod
(MethodEntry method) Add a method/attribute to the list of methods.(package private) void
addParentType
(SymtabEntry e, Scanner scanner) void
addStateElement
(InterfaceState state, Scanner scanner) private void
addToDerivers
(ForwardEntry forward) (package private) void
addToForwardedAllMethods
(MethodEntry method, Scanner scanner) Get the allMethods vector.clone()
This is a shallow copy cloneThis is a vector of SymtabEntry's.This method returns a vector of InterfaceEntry's.(package private) void
derivedFromAddElement
(SymtabEntry e, Scanner scanner) This method returns a vector of Strings, each of which is a fully qualified name of an interface.void
generate
(Hashtable symbolTable, PrintWriter stream) Invoke the interface generator.Access the interface generator.int
void
boolean
boolean
isLocal()
boolean
boolean
private void
lookForForwardEntrys
(Scanner scanner, InterfaceEntry entry) methods()
This is a vector of MethodEntry's.(package private) void
methodsAddElement
(MethodEntry method, Scanner scanner) boolean
replaceForwardDecl
(ForwardEntry oldEntry, InterfaceEntry newEntry) void
setInterfaceType
(int type) state()
This method returns a vector of the elements in the state block.private boolean
verifyMethod
(MethodEntry method, Scanner scanner, boolean clash) 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 Details
-
_derivedFromNames
-
_derivedFrom
-
_methods
-
_allMethods
Vector<MethodEntry> _allMethods -
forwardedDerivers
Vector<InterfaceEntry> forwardedDerivers -
_contained
-
_state
-
_interfaceType
private int _interfaceType -
interfaceGen
-
-
Constructor Details
-
InterfaceEntry
protected InterfaceEntry() -
InterfaceEntry
-
InterfaceEntry
-
-
Method Details
-
isAbstract
public boolean isAbstract() -
isLocal
public boolean isLocal() -
isLocalServant
public boolean isLocalServant() -
isLocalSignature
public boolean isLocalSignature() -
clone
Description copied from class:SymtabEntry
This is a shallow copy clone- Overrides:
clone
in classSymtabEntry
-
generate
Invoke the interface 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:
-
generator
Access the interface generator.- Overrides:
generator
in classSymtabEntry
- Returns:
- an object which implements the InterfaceGen interface.
- See Also:
-
addDerivedFrom
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
- aForwardEntry
orInterfaceEntry
-
derivedFrom
This method returns a vector of InterfaceEntry's.- Returns:
- a
Vector
of interfaces which this interface is derived from - See Also:
-
addDerivedFromName
Add to the list of derivedFrom names. -
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. -
addMethod
Add a method/attribute to the list of methods.- Parameters:
method
- method or attribute to add
-
methods
This is a vector of MethodEntry's. These are the methods and attributes contained within this Interface.- Returns:
Vector
ofMethodEntry
-
addContained
Add a symbol table entry to this interface's contained vector.- Parameters:
entry
- newSymtabEntry
to add
-
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
ofSymtabEntry
- See Also:
-
methodsAddElement
-
addToForwardedAllMethods
-
verifyMethod
-
derivedFromAddElement
-
addParentType
-
lookForForwardEntrys
-
replaceForwardDecl
-
addToDerivers
-
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
-
getInterfaceType
public int getInterfaceType()- Specified by:
getInterfaceType
in interfaceInterfaceType
-
setInterfaceType
public void setInterfaceType(int type) - Specified by:
setInterfaceType
in interfaceInterfaceType
-
allMethods
Get the allMethods vector.- Returns:
- Vector of all methods in the interface
- See Also:
-