jif.parse
Class Inst

java.lang.Object
  extended by jif.parse.Amb
      extended by jif.parse.Inst

public class Inst
extends Amb

An Inst represents a Amb of the form "P[T,U,...]". Either there must be at least two types/expressions in the list, which implies that this must be an instantiation of a polymorphic type, or there may be a single element in the list that is known to be a type. The type itself is still ambiguous.


Constructor Summary
Inst(Grm parser, polyglot.util.Position pos, polyglot.ast.TypeNode prefix, java.util.List params)
           
 
Method Summary
 java.util.List params()
           
 polyglot.ast.TypeNode prefix()
           
 polyglot.ast.TypeNode toClassType()
           
 polyglot.ast.Prefix toPrefix()
           
 polyglot.ast.Receiver toReceiver()
           
 polyglot.ast.TypeNode toType()
           
 polyglot.ast.TypeNode toUnlabeledType()
           
 
Methods inherited from class jif.parse.Amb
parser, position, toExpr, toIdentifier, toName, toNewArray, toNewArrayPrefix, toPackage, wrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Inst

public Inst(Grm parser,
            polyglot.util.Position pos,
            polyglot.ast.TypeNode prefix,
            java.util.List params)
     throws java.lang.Exception
Throws:
java.lang.Exception
Method Detail

prefix

public polyglot.ast.TypeNode prefix()

params

public java.util.List params()

toType

public polyglot.ast.TypeNode toType()
                             throws java.lang.Exception
Overrides:
toType in class Amb
Throws:
java.lang.Exception

toPrefix

public polyglot.ast.Prefix toPrefix()
                             throws java.lang.Exception
Overrides:
toPrefix in class Amb
Throws:
java.lang.Exception

toReceiver

public polyglot.ast.Receiver toReceiver()
                                 throws java.lang.Exception
Overrides:
toReceiver in class Amb
Throws:
java.lang.Exception

toUnlabeledType

public polyglot.ast.TypeNode toUnlabeledType()
                                      throws java.lang.Exception
Overrides:
toUnlabeledType in class Amb
Throws:
java.lang.Exception

toClassType

public polyglot.ast.TypeNode toClassType()
                                  throws java.lang.Exception
Overrides:
toClassType in class Amb
Throws:
java.lang.Exception