All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class prolog.TermType

java.lang.Object
   |
   +----prolog.TermType

public abstract class TermType
extends Object
implements Serializable
The base class of all types. This type represents the general case: unknown.

See Also:
PredicateCodeGen, JITPredicate

Variable Index

 o ClassName
 o JavaType

Constructor Index

 o TermType()

Method Index

 o compile_unify(ClauseCodeGen, TermInfo, TermInfo)
Generates code to unify one Term with another.
 o create(ClauseCodeGen, TermInfo)
Creates the Term denoted by this TermType.
 o getBinding(TermInfo)
Chase reference chains.
 o getJavaType(TermInfo)
 o instantiate(Term, TermInfo[], TypeDictionary, boolean)
Instantiates this TermType against a given Term.
 o load(ClauseCodeGen, TermInfo, boolean)
Loads a Term.
 o toString()
 o toString(StringBuffer)
 o unify(TermInfo, TermInfo, TypeTrail)
Unifies two TermType objects.

Variables

 o ClassName
 static final String ClassName
 o JavaType
 static final ObjectType JavaType

Constructors

 o TermType
 protected TermType()

Methods

 o getJavaType
 ObjectType getJavaType(TermInfo ti)
 o getBinding
 public TermInfo getBinding(TermInfo arg0)
Chase reference chains.

 o instantiate
 abstract TermInfo instantiate(Term t,
                               TermInfo typevars[],
                               TypeDictionary types,
                               boolean map)
Instantiates this TermType against a given Term.

 o unify
 abstract boolean unify(TermInfo ti,
                        TermInfo arg,
                        TypeTrail trail)
Unifies two TermType objects. We use the PTD as a trail.

See Also:
called
 o compile_unify
 public abstract boolean compile_unify(ClauseCodeGen ccg,
                                       TermInfo arg0,
                                       TermInfo arg1)
Generates code to unify one Term with another. The idea is we invoke this method on the left/first/arg0 TermType object, as it is always a Variable.

 o load
 public void load(ClauseCodeGen ccg,
                  TermInfo arg0,
                  boolean cast)
Loads a Term.

 o create
 public abstract void create(ClauseCodeGen ccg,
                             TermInfo arg0)
Creates the Term denoted by this TermType. Stack: ... -> ..., TermRef, where TermRef has the type of the created Term.

 o toString
 public void toString(StringBuffer out)
 o toString
 public final String toString()
Overrides:
toString in class Object

All Packages  Class Hierarchy  This Package  Previous  Next  Index