ubc.cs.JLog.Builtins
Class jCallN
java.lang.Object
ubc.cs.JLog.Foundation.jType
ubc.cs.JLog.Terms.jTerm
ubc.cs.JLog.Terms.iPredicate
ubc.cs.JLog.Terms.jBuiltinPredicate
ubc.cs.JLog.Terms.jUnaryBuiltinPredicate
ubc.cs.JLog.Builtins.jCall
ubc.cs.JLog.Builtins.jCallN
- All Implemented Interfaces:
- iType, iUnifiable, iConsultable, iName, iNameArity, iTerm, iValue
public class jCallN
- extends jCall
A specialized version of jCall that handles cases of arity >= 2. Its term is a
jCompoundTerm where element 0 has the predicate to invoke, and the remaining elements
are added to the element 0 predicate to increase its arity.
- Version:
- %I%, %G%
- Author:
- Glendon Holst
| Fields inherited from class ubc.cs.JLog.Foundation.jType |
type |
| Fields inherited from interface ubc.cs.JLog.Foundation.iType |
TYPE_ARITHMETIC, TYPE_ATOM, TYPE_BUILTINPREDICATE, TYPE_COMMAND, TYPE_COMPARE, TYPE_COMPOUND, TYPE_CONS, TYPE_IF, TYPE_INTEGER, TYPE_LIST, TYPE_NULLLIST, TYPE_NUMERICCOMPARE, TYPE_OBJECT, TYPE_OPERATOR, TYPE_OR, TYPE_ORPREDICATE, TYPE_PREDICATE, TYPE_PREDICATETERMS, TYPE_REAL, TYPE_TYPE, TYPE_UNARYARITHMETIC, TYPE_UNARYOPERATOR, TYPE_UNDEFINED, TYPE_VARIABLE |
| Methods inherited from class ubc.cs.JLog.Builtins.jCall |
getName |
| Methods inherited from class ubc.cs.JLog.Terms.jUnaryBuiltinPredicate |
compareArguments, consult, consultReset, copy, duplicate, enumerateVariables, equivalenceArguments, getArguments, getArity, getRHS, isConsultNeeded, prove, registerUnboundVariables, registerVariables, unifyArguments |
jCallN
public jCallN(jCompoundTerm c)
addGoals
public void addGoals(jGoal g,
jVariable[] vars,
iGoalStack goals)
- Description copied from class:
iPredicate
- Adds goal to prove this predicate onto goal stack. This version is called when
the original predicate must duplicate itself (or its arguments).
Add goals in the reverse order you want them evaluated.
- Overrides:
addGoals in class jCall
- Parameters:
g - The super-goal jGoal for the sub-goal that this
function will add.vars - The vector of duplicate variables produced
from the previous call to registerVariables.
Needed for call to duplicate.goals - The iGoalStack to add the goal to.
addGoals
public void addGoals(jGoal g,
iGoalStack goals)
- Description copied from class:
iPredicate
- Adds goal to prove this predicate onto goal stack. This version is called when
the original predicate is already duplicated (usually as part of an argument for
another predicate). Add goals in the reverse order you want them evaluated.
- Overrides:
addGoals in class jCall
- Parameters:
g - The super-goal jGoal for the sub-goal that this
function will add.goals - The iGoalStack to add the goal to.
duplicate
protected jUnaryBuiltinPredicate duplicate(jTerm t)
- Overrides:
duplicate in class jCall
toString
public String toString(boolean usename)
- Description copied from class:
jTerm
- Produces a string identifying this term, suitable for display to the console.
param usename determines whether to display variables by name or identity.
false is the default for displaying the term,
true for displaying this term in a user query.
- Specified by:
toString in interface iTerm- Overrides:
toString in class jUnaryBuiltinPredicate
- Returns:
String which is a textual representation of this
term.
Copyright © 2011. All Rights Reserved.