jpl
public abstract class Term extends java.lang.Object
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.
Modifier and Type | Method and Description |
---|---|
abstract 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
|
abstract boolean |
hasFunctor(double value,
int arity)
Tests whether this Term's functor has (double) 'name' and 'arity'
Returns false if called inappropriately
|
abstract boolean |
hasFunctor(int value,
int arity)
Tests whether this Term's functor has (int) 'name' and 'arity'
Returns false if called inappropriately
|
abstract 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
|
abstract java.lang.Object |
jrefToObject() |
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
|
static Term |
objectToJRef(java.lang.Object obj)
returns a new Term instance which represents the given object
|
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
|
public abstract Term arg(int ano)
public abstract Term[] args()
public abstract boolean hasFunctor(java.lang.String name, int arity)
public abstract boolean hasFunctor(int value, int arity)
public abstract 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 abstract java.lang.Object jrefToObject()
public static Term objectToJRef(java.lang.Object obj)
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