Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## jif.types
Class JifMethodInstance_c

    java.lang.Object
      polyglot.types.TypeObject_c
          polyglot.types.ProcedureInstance_c
              polyglot.types.MethodInstance_c
                  jif.types.JifMethodInstance_c

All Implemented Interfaces:
  java.io.Serializable, java.lang.Cloneable, JifMethodInstance, JifProcedureInstance, polyglot.types.CodeInstance, polyglot.types.Declaration, polyglot.types.FunctionInstance, polyglot.types.MemberInstance, polyglot.types.MethodInstance, polyglot.types.ProcedureInstance, polyglot.types.TypeObject, polyglot.util.Copy

    public class JifMethodInstance_c

extends polyglot.types.MethodInstance_c
implements JifMethodInstance

An implementation of the `JifMethodInstance` interface.

See Also:
  Serialized Form

Field Summary
`protected java.util.List` | `constraints`
`protected boolean` | `isDefaultPCBound`
`protected boolean` | `isDefaultReturnLabel`
`protected Label` | `pcBound`
`protected Label` | `returnLabel`

Fields inherited from class polyglot.types.MethodInstance_c
`decl, name, returnType`

Fields inherited from class polyglot.types.ProcedureInstance_c
`container, flags, formalTypes, throwTypes`

Fields inherited from class polyglot.types.TypeObject_c
`position, ts`

Constructor Summary
`JifMethodInstance_c(JifTypeSystem ts, polyglot.util.Position pos, polyglot.types.ReferenceType container, polyglot.types.Flags flags, polyglot.types.Type returnType, java.lang.String name, Label pcBound, boolean isDefaultPCBound, java.util.List formalTypes, java.util.List formalArgLabels, Label returnLabel, boolean isDefaultReturnLabel, java.util.List excTypes, java.util.List constraints)`

Method Summary
`java.util.List` | `constraints()`
`java.lang.String` | `debugString()`
`java.lang.String` | `fullSignature()`
`boolean` | `isCanonical()`
`boolean` | `isDefaultPCBound()`
`boolean` | `isDefaultReturnLabel()`
`Label` | `pcBound()`
`Label` | `returnLabel()`
`Label` | `returnValueLabel()`
`void` | `setConstraints(java.util.List constraints)`
`void` | `setPCBound(Label pcBound, boolean isDefault)`
`void` | `setReturnLabel(Label returnLabel, boolean isDefault)`
`java.lang.String` | `signature()`
`void` | `subst(LabelSubstitution subst)`
`void` | `subst(VarMap bounds)`
`java.lang.String` | `toString()`

Methods inherited from class polyglot.types.MethodInstance_c
`canOverride, canOverrideImpl, canOverrideImpl, checkOverride, container, declaration, designator, equalsImpl, flags, formalTypes, hashCode, implemented, implementedImpl, isSameMethod, isSameMethodImpl, methodCallValid, methodCallValidImpl, name, name, orig, overrides, overridesImpl, returnType, returnType, setDeclaration, setName, setReturnType, throwTypes`

Methods inherited from class polyglot.types.ProcedureInstance_c
`callValid, callValidImpl, container, flags, formalTypes, hasFormals, hasFormalsImpl, listIsCanonical, moreSpecific, moreSpecificImpl, setContainer, setFlags, setFormalTypes, setThrowTypes, throwsSubset, throwsSubsetImpl, throwTypes`

Methods inherited from class polyglot.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, canOverrideImpl, checkOverride, container, flags, formalTypes, implemented, implementedImpl, isSameMethod, isSameMethodImpl, methodCallValid, methodCallValidImpl, name, name, orig, overrides, overridesImpl, returnType, setName, throwTypes`

Methods inherited from interface polyglot.types.FunctionInstance
`returnType, setReturnType`

Methods inherited from interface polyglot.types.ProcedureInstance
`callValid, callValidImpl, designator, formalTypes, hasFormals, hasFormalsImpl, moreSpecific, moreSpecificImpl, setFormalTypes, setThrowTypes, throwsSubset, throwsSubsetImpl, throwTypes`

Methods inherited from interface polyglot.types.CodeInstance
`flags`

Methods inherited from interface polyglot.types.TypeObject
`equalsImpl, position, typeSystem`

Methods inherited from interface polyglot.util.Copy
`copy`

Methods inherited from interface polyglot.types.MemberInstance
`container, flags, setContainer, setFlags`

Methods inherited from interface polyglot.types.Declaration
`declaration, setDeclaration`

Methods inherited from interface jif.types.JifProcedureInstance
`container`

Field Detail

### pcBound

    protected Label pcBound

### returnLabel

    protected Label returnLabel

### constraints

    protected java.util.List constraints

### isDefaultPCBound

    protected boolean isDefaultPCBound

### isDefaultReturnLabel

    protected boolean isDefaultReturnLabel

Constructor Detail

### JifMethodInstance_c

    public JifMethodInstance_c(JifTypeSystem ts,
                               polyglot.util.Position pos,
                               polyglot.types.ReferenceType container,
                               polyglot.types.Flags flags,
                               polyglot.types.Type returnType,
                               java.lang.String name,
                               Label pcBound,
                               boolean isDefaultPCBound,
                               java.util.List formalTypes,
                               java.util.List formalArgLabels,
                               Label returnLabel,
                               boolean isDefaultReturnLabel,
                               java.util.List excTypes,
                               java.util.List constraints)

Method Detail

### pcBound

    public Label pcBound()

  Specified by:
    `pcBound` in interface `JifProcedureInstance`

### setPCBound

    public void setPCBound(Label pcBound,
                           boolean isDefault)

  Specified by:
    `setPCBound` in interface `JifProcedureInstance`

### isDefaultPCBound

    public boolean isDefaultPCBound()

  Specified by:
    `isDefaultPCBound` in interface `JifProcedureInstance`

### returnLabel

    public Label returnLabel()

  Specified by:
    `returnLabel` in interface `JifProcedureInstance`

### setReturnLabel

    public void setReturnLabel(Label returnLabel,
                               boolean isDefault)

  Specified by:
    `setReturnLabel` in interface `JifProcedureInstance`

### isDefaultReturnLabel

    public boolean isDefaultReturnLabel()

  Specified by:
    `isDefaultReturnLabel` in interface `JifProcedureInstance`

### returnValueLabel

    public Label returnValueLabel()

  Specified by:
    `returnValueLabel` in interface `JifMethodInstance`

### constraints

    public java.util.List constraints()

  Specified by:
    `constraints` in interface `JifProcedureInstance`

### setConstraints

    public void setConstraints(java.util.List constraints)

  Specified by:
    `setConstraints` in interface `JifProcedureInstance`

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `polyglot.types.MethodInstance_c`

### isCanonical

    public boolean isCanonical()

  Specified by:
    `isCanonical` in interface `polyglot.types.TypeObject`
  Overrides:
    `isCanonical` in class `polyglot.types.MethodInstance_c`

### subst

    public void subst(VarMap bounds)

  Specified by:
    `subst` in interface `JifProcedureInstance`

### subst

    public void subst(LabelSubstitution subst)
               throws polyglot.types.SemanticException

  Specified by:
    `subst` in interface `JifProcedureInstance`
  Throws:
    `polyglot.types.SemanticException`

### debugString

    public java.lang.String debugString()

  Specified by:
    `debugString` in interface `JifProcedureInstance`

### signature

    public java.lang.String signature()

  Specified by:
    `signature` in interface `polyglot.types.ProcedureInstance`
  Overrides:
    `signature` in class `polyglot.types.MethodInstance_c`

### fullSignature

    public java.lang.String fullSignature()

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD