polyglot.ext.coffer.types
Class CofferMethodInstance_c

java.lang.Object
  extended by polyglot.ext.jl.types.TypeObject_c
      extended by polyglot.ext.jl.types.ProcedureInstance_c
          extended by polyglot.ext.jl.types.MethodInstance_c
              extended by polyglot.ext.coffer.types.CofferMethodInstance_c
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, CofferMethodInstance, CofferProcedureInstance, CodeInstance, MemberInstance, MethodInstance, ProcedureInstance, TypeObject, Copy

public class CofferMethodInstance_c
extends MethodInstance_c
implements CofferMethodInstance

An implementation of the CofferMethodInstance interface.

See Also:
Serialized Form

Nested Class Summary
 class CofferMethodInstance_c.GetType
           
 
Field Summary
protected  KeySet entryKeys
           
protected  KeySet returnKeys
           
protected  java.util.List throwConstraints
           
 
Fields inherited from class polyglot.ext.jl.types.MethodInstance_c
name, returnType
 
Fields inherited from class polyglot.ext.jl.types.ProcedureInstance_c
container, excTypes, flags, formalTypes
 
Fields inherited from class polyglot.ext.jl.types.TypeObject_c
position, ts
 
Constructor Summary
CofferMethodInstance_c(CofferTypeSystem ts, Position pos, ReferenceType container, Flags flags, Type returnType, java.lang.String name, java.util.List argTypes, KeySet entryKeys, KeySet returnKeys, java.util.List throwConstraints)
           
 
Method Summary
 boolean canOverrideImpl(MethodInstance mj, boolean quiet)
          Return true if this method can override mi.
 KeySet entryKeys()
           
 CofferProcedureInstance entryKeys(KeySet entryKeys)
           
 KeySet returnKeys()
           
 CofferProcedureInstance returnKeys(KeySet returnKeys)
           
 java.util.List throwConstraints()
           
 CofferProcedureInstance throwConstraints(java.util.List throwConstraints)
           
 java.util.List throwTypes()
          List of declared exception types thrown.
 MethodInstance throwTypes(java.util.List throwTypes)
          Set the method's exception throw types.
 java.lang.String toString()
           
 
Methods inherited from class polyglot.ext.jl.types.MethodInstance_c
canOverride, canOverrideImpl, checkOverride, container, designator, equalsImpl, flags, formalTypes, hashCode, implemented, implementedImpl, isCanonical, isSameMethod, isSameMethodImpl, methodCallValid, methodCallValidImpl, name, name, overrides, overridesImpl, returnType, returnType, signature
 
Methods inherited from class polyglot.ext.jl.types.ProcedureInstance_c
callValid, callValidImpl, container, flags, formalTypes, hasFormals, hasFormalsImpl, listIsCanonical, moreSpecific, moreSpecificImpl, throwsSubset, throwsSubsetImpl
 
Methods inherited from class polyglot.ext.jl.types.TypeObject_c
copy, equals, position, typeSystem
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface polyglot.types.MethodInstance
canOverride, checkOverride, container, flags, formalTypes, implemented, implementedImpl, isSameMethod, isSameMethodImpl, methodCallValid, methodCallValidImpl, name, name, overrides, overridesImpl, returnType, returnType
 
Methods inherited from interface polyglot.types.ProcedureInstance
callValid, callValidImpl, designator, formalTypes, hasFormals, hasFormalsImpl, moreSpecific, moreSpecificImpl, signature, throwsSubset, throwsSubsetImpl
 
Methods inherited from interface polyglot.types.MemberInstance
container, flags
 
Methods inherited from interface polyglot.types.TypeObject
equalsImpl, isCanonical, position, typeSystem
 
Methods inherited from interface polyglot.util.Copy
copy
 
Methods inherited from interface polyglot.types.ProcedureInstance
callValid, callValidImpl, designator, formalTypes, hasFormals, hasFormalsImpl, moreSpecific, moreSpecificImpl, signature, throwsSubset, throwsSubsetImpl
 
Methods inherited from interface polyglot.types.MemberInstance
container, flags
 
Methods inherited from interface polyglot.types.TypeObject
equalsImpl, isCanonical, position, typeSystem
 
Methods inherited from interface polyglot.util.Copy
copy
 

Field Detail

entryKeys

protected KeySet entryKeys

returnKeys

protected KeySet returnKeys

throwConstraints

protected java.util.List throwConstraints
Constructor Detail

CofferMethodInstance_c

public CofferMethodInstance_c(CofferTypeSystem ts,
                              Position pos,
                              ReferenceType container,
                              Flags flags,
                              Type returnType,
                              java.lang.String name,
                              java.util.List argTypes,
                              KeySet entryKeys,
                              KeySet returnKeys,
                              java.util.List throwConstraints)
Method Detail

entryKeys

public KeySet entryKeys()
Specified by:
entryKeys in interface CofferProcedureInstance

returnKeys

public KeySet returnKeys()
Specified by:
returnKeys in interface CofferProcedureInstance

throwConstraints

public java.util.List throwConstraints()
Specified by:
throwConstraints in interface CofferProcedureInstance

throwTypes

public java.util.List throwTypes()
Description copied from interface: ProcedureInstance
List of declared exception types thrown.

Specified by:
throwTypes in interface ProcedureInstance
Overrides:
throwTypes in class ProcedureInstance_c
Returns:
A list of Type.
See Also:
Type

throwTypes

public MethodInstance throwTypes(java.util.List throwTypes)
Description copied from interface: MethodInstance
Set the method's exception throw types.

Specified by:
throwTypes in interface MethodInstance
Overrides:
throwTypes in class MethodInstance_c
Parameters:
throwTypes - A list of Type.
See Also:
Type

entryKeys

public CofferProcedureInstance entryKeys(KeySet entryKeys)
Specified by:
entryKeys in interface CofferProcedureInstance

returnKeys

public CofferProcedureInstance returnKeys(KeySet returnKeys)
Specified by:
returnKeys in interface CofferProcedureInstance

throwConstraints

public CofferProcedureInstance throwConstraints(java.util.List throwConstraints)
Specified by:
throwConstraints in interface CofferProcedureInstance

canOverrideImpl

public boolean canOverrideImpl(MethodInstance mj,
                               boolean quiet)
                        throws SemanticException
Description copied from interface: MethodInstance
Return true if this method can override mi. This method should not be called except by TypeSystem and by subclasses. If quiet is true and this method cannot override mi, then false is returned; otherwise, if quiet is false and this method cannot override mi, then a SemanticException is thrown.

Specified by:
canOverrideImpl in interface MethodInstance
Overrides:
canOverrideImpl in class MethodInstance_c
quiet - If true, then no Semantic Exceptions will be thrown, and the return value will be true or false. Otherwise, if the method cannot override, then a SemanticException will be thrown, else the method will return true.
Throws:
SemanticException

toString

public java.lang.String toString()
Overrides:
toString in class MethodInstance_c