private void CompileCall(PrologCodeTerm p)
{
AMPredicateSet builtins = AMPredicateSet.Instance;
PrologCodePredicate predicate = (PrologCodePredicate)p;
if (builtins.IsBuiltin(predicate.Name, predicate.Arity))
{
CompileBuiltinPredicateCall(predicate);
}
else if (predicate.IsMethod)
{
CompileMethod(predicate);
}
else
{
CompilePrologPredicateCall(predicate);
}
}