|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjpl.Term
public abstract class Term
Term is the abstract base class for Compound, Atom, Variable, Integer and Float, which comprise a Java-oriented concrete syntax for Prolog. You cannot create instances of Term directly; rather, you should create instances of Term's concrete subclasses. Alternatively, use textToTerm() to construct a Term from its conventional Prolog source text representation.
Copyright (C) 1998 Fred Dushin
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library Public License for more details.
Method Summary | |
---|---|
Term |
arg(int ano)
returns the ano-th (1+) argument of a (Compound) Term throws a JPLException for any other subclass |
abstract Term[] |
args()
returns, as a Term[], the arguments of a Compound returns an empty Term[] from an Atom, Integer or Float throws a JPLException from a Variable |
int |
arity()
returns, as an int, the arity of a Compound, Atom, Integer or Float throws a JPLException from a Variable |
abstract java.lang.String |
debugString()
Deprecated. |
static java.lang.String |
debugString(Term[] arg)
Deprecated. |
double |
doubleValue()
returns the value (as a double) of an Integer or Float throws a JPLException from any other subclass |
float |
floatValue()
returns the value (as a float) of an Integer or Float throws a JPLException from a Compound, Atom or Variable |
boolean |
hasFunctor(double value,
int arity)
Tests whether this Term's functor has (double) 'name' and 'arity' Returns false if called inappropriately |
boolean |
hasFunctor(int value,
int arity)
Tests whether this Term's functor has (int) 'name' and 'arity' Returns false if called inappropriately |
boolean |
hasFunctor(java.lang.String name,
int arity)
Tests whether this Term's functor has (String) 'name' and 'arity' Returns false if called inappropriately |
int |
intValue()
returns the value (as an int) of an Integer or Float throws a JPLException from a Compound, Atom or Variable |
boolean |
isAtom()
whether this Term represents an atom |
boolean |
isCompound()
whether this Term represents a compound term |
boolean |
isFloat()
whether this Term represents an atom |
boolean |
isInteger()
whether this Term represents an atom |
boolean |
isJFalse()
whether this Term is a 'jfalse' structure, i.e. |
boolean |
isJNull()
whether this Term is a 'jnull' structure, i.e. |
boolean |
isJObject()
whether this Term is a 'jobject' structure, i.e. |
boolean |
isJRef()
whether this Term is a 'jref' structure, i.e. |
boolean |
isJTrue()
whether this Term is a 'jtrue' structure, i.e. |
boolean |
isJVoid()
whether this Term is a 'jvoid' structure, i.e. |
boolean |
isVariable()
whether this Term is a variable |
int |
listLength()
the length of this list, iff it is one, else an exception is thrown |
long |
longValue()
returns the value (as a long) of an Integer or Float throws a JPLException from a Compound, Atom or Variable |
java.lang.String |
name()
returns, as a String, the name of a Compound, Atom or Variable throws a JPLException from an Integer or Float |
void |
put(term_t term)
|
Term |
putParams(Term plist)
|
Term |
putParams(Term[] ps)
|
static void |
putTerm(java.lang.Object obj,
term_t termref)
|
static java.lang.String |
toString(Term[] args)
Converts a list of Terms to a String. |
Term[] |
toTermArray()
returns an array of terms which are the successive members of this list, if it is a list, else throws an exception |
abstract int |
type()
returns the type of this term, as one of jpl.fli.Prolog.COMPOUND, .ATOM, .VARIABLE, .INTEGER, .FLOAT etc |
abstract java.lang.String |
typeName()
returns the name of the type of this term, as one of "Compound", "Atom", "Variable", "Integer", "Float" etc |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public Term arg(int ano)
public abstract Term[] args()
public boolean hasFunctor(java.lang.String name, int arity)
public boolean hasFunctor(int value, int arity)
public boolean hasFunctor(double value, int arity)
public java.lang.String name()
public int arity()
public int intValue()
public long longValue()
public float floatValue()
public double doubleValue()
public abstract int type()
public abstract java.lang.String typeName()
public boolean isAtom()
public boolean isCompound()
public boolean isFloat()
public boolean isInteger()
public boolean isVariable()
public boolean isJFalse()
public boolean isJTrue()
public boolean isJNull()
public boolean isJVoid()
public boolean isJObject()
public boolean isJRef()
public Term putParams(Term[] ps)
public Term putParams(Term plist)
public int listLength()
JPLException
public Term[] toTermArray()
JPLException
public abstract java.lang.String debugString()
public static java.lang.String debugString(Term[] arg)
public void put(term_t term)
public static void putTerm(java.lang.Object obj, term_t termref)
public static java.lang.String toString(Term[] args)
args
- An array of Terms to convert
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |