jpl

Class Float

public class Float extends Term

Float is a specialised Term with a double field, representing a Prolog 64-bit ISO/IEC floating point value. Once constructed, a Float's value cannot be altered.
 Float f = new Float( 3.14159265 );
 
A Float can be used (and re-used) in Compound Terms. Two Float instances are equal (by .equals()) iff their (double) values are equal.
Copyright (C) 2004 Paul Singleton

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.


See Also: Term Compound

Constructor Summary
Float(double value)
This constructor creates a Float with the supplied (double) value.
Method Summary
Termarg(int i)
throws a JPLException (arg(int) is defined only for Compound and Atom)
Term[]args()
The (nonexistent) args of this Float
intarity()
Returns the arity (0) of this Float
StringdebugString()
Returns a debug-friendly String representation of this Float
doubledoubleValue()
returns the (double) value of this Float
booleanequals(Object obj)
Two Floats are equal if they are the same object, or their values are equal
floatfloatValue()
returns the (double) value of this Float, converted to a float
booleanhasFunctor(String name, int arity)
Tests whether this Float's functor has (String) 'name' and 'arity' (never)
booleanhasFunctor(int val, int arity)
Tests whether this Float's functor has (int) 'name' and 'arity' (never)
booleanhasFunctor(double val, int arity)
Tests whether this Float's functor has (double) 'name' and 'arity'
intintValue()
returns the (double) value of this Float, converted to an int
longlongValue()
returns the (double) value of this Float, converted to a long
Stringname()
throws a JPLException (name() is defined only for Compound, Atom and Variable)
StringtoString()
Returns a Prolog source text representation of this Float
inttype()
StringtypeName()
doublevalue()
The immutable value of this jpl.Float object, as a Java double

Constructor Detail

Float

public Float(double value)
This constructor creates a Float with the supplied (double) value.

Parameters: value this Float's value

Method Detail

arg

public final Term arg(int i)
throws a JPLException (arg(int) is defined only for Compound and Atom)

Returns: the ith argument (counting from 1) of this Float (never)

args

public Term[] args()
The (nonexistent) args of this Float

Returns: the (nonexistent) args of this Float

arity

public final int arity()
Returns the arity (0) of this Float

Returns: the arity (0) of this Float

debugString

public String debugString()

Deprecated:

Returns a debug-friendly String representation of this Float

Returns: a debug-friendly String representation of this Float

doubleValue

public final double doubleValue()
returns the (double) value of this Float

Returns: the (double) value of this Float

equals

public final boolean equals(Object obj)
Two Floats are equal if they are the same object, or their values are equal

Parameters: obj The Object to compare

Returns: true if the Object satisfies the above condition

floatValue

public final float floatValue()
returns the (double) value of this Float, converted to a float

Returns: the (double) value of this Float, converted to a float

hasFunctor

public final boolean hasFunctor(String name, int arity)
Tests whether this Float's functor has (String) 'name' and 'arity' (never)

Returns: whether this Float's functor has (String) 'name' and 'arity' (never)

hasFunctor

public final boolean hasFunctor(int val, int arity)
Tests whether this Float's functor has (int) 'name' and 'arity' (never)

Returns: whether this Float's functor has (int) 'name' and 'arity' (never)

hasFunctor

public final boolean hasFunctor(double val, int arity)
Tests whether this Float's functor has (double) 'name' and 'arity'

Returns: whether this Float's functor has (double) 'name' and 'arity'

intValue

public final int intValue()
returns the (double) value of this Float, converted to an int

Returns: the (double) value of this Float, converted to an int

longValue

public final long longValue()
returns the (double) value of this Float, converted to a long

Returns: the (double) value of this Float, converted to a long

name

public final String name()
throws a JPLException (name() is defined only for Compound, Atom and Variable)

Returns: the name of this Float (never)

toString

public String toString()
Returns a Prolog source text representation of this Float

Returns: a Prolog source text representation of this Float

type

public final int type()

typeName

public String typeName()

value

public double value()

Deprecated:

The immutable value of this jpl.Float object, as a Java double

Returns: the Float's value