com.svincent.moksa
Class WamFloat

java.lang.Object
  |
  +--com.svincent.moksa.WamObject
        |
        +--com.svincent.moksa.PrologTerm
              |
              +--com.svincent.moksa.WamFloat
All Implemented Interfaces:
Trailable

public class WamFloat
extends PrologTerm

A WamFloat is a Prolog constant for a floating-point number


Fields inherited from class com.svincent.moksa.PrologTerm
EmptyArray
 
Constructor Summary
WamFloat(PrologEngine _engine, double _value)
          Builds a new WamFloat with the given name.
 
Method Summary
 java.lang.Object accept(PrologTermVisitor v, java.lang.Object parm)
          Allow PrologTermVisitor to access this PrologTerm.
 PrologTerm clonePrologTerm(java.util.Map objs)
           
 PrologTerm evaluateExpression()
          Evaluates this term as an expression.
 double floatValue()
          Returns this Float's integral value.
 java.lang.String getName()
          Retrieves this WamFloat's name.
 PrologTerm getNameConstant()
          Retrieves this WamInteger's name as a term.
 boolean isConstant()
          Returns true iff this is a constant.
 boolean isFloat()
          Returns true iff this is a WamFloat.
 void tag(java.io.PrintWriter out)
          Writes a short human-readable representation of this object to the given Writer.
 boolean unify(PrologTerm _that, boolean doBindings)
          Unification algorithm.
 
Methods inherited from class com.svincent.moksa.PrologTerm
clonePrologTerm, deref, getArity, getPriority, intValue, isAtom, isCompoundTerm, isEmptyList, isInteger, isJavaObject, isList, isNonEmptyList, isStreamId, isStructure, isVariable, printVariables, setPriority, unify, unifyWithoutBindings, untrail
 
Methods inherited from class com.svincent.moksa.WamObject
tag
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WamFloat

public WamFloat(PrologEngine _engine,
                double _value)
Builds a new WamFloat with the given name. Note that WamFloats are intended to be used as constants, so no building API is provided.

Method Detail

getName

public java.lang.String getName()
Retrieves this WamFloat's name.
Overrides:
getName in class PrologTerm

getNameConstant

public PrologTerm getNameConstant()
Retrieves this WamInteger's name as a term.
Overrides:
getNameConstant in class PrologTerm

isFloat

public boolean isFloat()
Returns true iff this is a WamFloat.
Overrides:
isFloat in class PrologTerm

isConstant

public boolean isConstant()
Returns true iff this is a constant.
Overrides:
isConstant in class PrologTerm

floatValue

public double floatValue()
Returns this Float's integral value.
Overrides:
floatValue in class PrologTerm

accept

public java.lang.Object accept(PrologTermVisitor v,
                               java.lang.Object parm)
Allow PrologTermVisitor to access this PrologTerm.
Overrides:
accept in class PrologTerm

unify

public boolean unify(PrologTerm _that,
                     boolean doBindings)
Unification algorithm. Can cause variables to become bound. (We will eventually have a rollback mechanism to undo these bindings.)

Overrides:
unify in class PrologTerm
Returns:
true iff the two PrologTerms successfully unify.

clonePrologTerm

public PrologTerm clonePrologTerm(java.util.Map objs)
Overrides:
clonePrologTerm in class PrologTerm

evaluateExpression

public PrologTerm evaluateExpression()
                              throws PrologException
Evaluates this term as an expression.
Overrides:
evaluateExpression in class PrologTerm

tag

public void tag(java.io.PrintWriter out)
Description copied from class: WamObject
Writes a short human-readable representation of this object to the given Writer.

Overrides:
tag in class WamObject



This is documentation for Moksa Prolog, which can be found at http://www.svincent.com/moksa/

Copyright © 1999 Shawn P. Vincent.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.