public override string ToString()
{
string predicateStr = _name;
// For testing purposes, this can be fixed by implementing WriteTerm
if (_name == "=")
{
predicateStr = ((PrologCodeTerm)_arguments[0]).ToString() + " = " + ((PrologCodeTerm)_arguments[1]).ToString();
}
else
{
if (_arguments.Count != 0)
{
predicateStr += "(";
for (int i = 0; i < _arguments.Count; i++)
{
PrologCodeTerm term = (PrologCodeTerm)_arguments[i];
predicateStr += term.ToString();
if (i != _arguments.Count - 1)
{
predicateStr += ",";
}
}
predicateStr += ")";
}
}
return predicateStr;
}