com.irs.jam
Class Expression

java.lang.Object
  |
  +--com.irs.jam.Expression
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
FunctionCall, Predicate, Value, Variable

public abstract class Expression
extends java.lang.Object
implements java.io.Serializable

Represents the basic data-types within JAM agents

See Also:
Serialized Form

Field Summary
static int EXP_FUNCALL
           
static int EXP_PREDICATE
           
static int EXP_UNDEFINED
           
static int EXP_VALUE
           
static int EXP_VARIABLE
           
 
Constructor Summary
Expression()
           
 
Method Summary
 boolean equals(Expression e, Binding b)
          Evaluates the expression to a single resultant (whether the two values are equivalent)
abstract  Value eval(Binding b)
          Evaluates the expression to a single resultant
abstract  void format(java.io.PrintStream s, Binding b)
           
abstract  java.lang.String getName()
           
abstract  int getType()
           
 Variable getVariable()
           
 boolean isVariable()
           
 boolean lessthan(Expression e, Binding b)
          Evaluates the expression to a single resultant (whether the first value is "less than" the second value)
abstract  void print(java.io.PrintStream s, Binding b)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EXP_UNDEFINED

public static final int EXP_UNDEFINED

EXP_VALUE

public static final int EXP_VALUE

EXP_VARIABLE

public static final int EXP_VARIABLE

EXP_FUNCALL

public static final int EXP_FUNCALL

EXP_PREDICATE

public static final int EXP_PREDICATE
Constructor Detail

Expression

public Expression()
Method Detail

getName

public abstract java.lang.String getName()

getType

public abstract int getType()

print

public abstract void print(java.io.PrintStream s,
                           Binding b)

format

public abstract void format(java.io.PrintStream s,
                            Binding b)

eval

public abstract Value eval(Binding b)
Evaluates the expression to a single resultant

isVariable

public boolean isVariable()

getVariable

public Variable getVariable()

equals

public boolean equals(Expression e,
                      Binding b)
Evaluates the expression to a single resultant (whether the two values are equivalent)

lessthan

public boolean lessthan(Expression e,
                        Binding b)
Evaluates the expression to a single resultant (whether the first value is "less than" the second value)