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.ext.jl.types.TypeObject_c
          polyglot.ext.jl.types.ProcedureInstance_c
              polyglot.ext.jl.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.MemberInstance, polyglot.types.MethodInstance, polyglot.types.ProcedureInstance, polyglot.types.TypeObject, polyglot.util.Copy

    public class JifMethodInstance_c

extends polyglot.ext.jl.types.MethodInstance_c
implements JifMethodInstance

An implementation of the `JifMethodInstance` interface.

See Also:
  Serialized Form

Field Summary
`protected java.util.List` | `constraints`
`protected boolean` | `isDefaultReturnLabel`
`protected boolean` | `isDefaultStartLabel`
`protected Label` | `returnLabel`
`protected Label` | `startLabel`

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

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

Fields inherited from class polyglot.ext.jl.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 startLabel, boolean isDefaultStartLabel, 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` | `isDefaultReturnLabel()`
`boolean` | `isDefaultStartLabel()`
`Label` | `returnLabel()`
`Label` | `returnValueLabel()`
`void` | `setConstraints(java.util.List constraints)`
`void` | `setReturnLabel(Label returnLabel, boolean isDefault)`
`void` | `setStartLabel(Label startLabel, boolean isDefault)`
`java.lang.String` | `signature()`
`Label` | `startLabel()`
`void` | `subst(LabelSubstitution subst)`
`void` | `subst(VarMap bounds)`
`java.lang.String` | `toString()`

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

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

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

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.MemberInstance
`container, flags, setContainer, setFlags`

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

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.MemberInstance
`container, flags, setContainer, setFlags`

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

Field Detail

### startLabel

    protected Label startLabel

### returnLabel

    protected Label returnLabel

### constraints

    protected java.util.List constraints

### isDefaultStartLabel

    protected boolean isDefaultStartLabel

### 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 startLabel,
                               boolean isDefaultStartLabel,
                               java.util.List formalTypes,
                               java.util.List formalArgLabels,
                               Label returnLabel,
                               boolean isDefaultReturnLabel,
                               java.util.List excTypes,
                               java.util.List constraints)

Method Detail

### startLabel

    public Label startLabel()

  Specified by:
    `startLabel` in interface `JifProcedureInstance`

### setStartLabel

    public void setStartLabel(Label startLabel,
                              boolean isDefault)

  Specified by:
    `setStartLabel` in interface `JifProcedureInstance`

### isDefaultStartLabel

    public boolean isDefaultStartLabel()

  Specified by:
    `isDefaultStartLabel` 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.ext.jl.types.MethodInstance_c`

### isCanonical

    public boolean isCanonical()

  Specified by:
    `isCanonical` in interface `polyglot.types.TypeObject`
  Overrides:
    `isCanonical` in class `polyglot.ext.jl.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.ext.jl.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