jess
Class Defrule

java.lang.Object
  |
  +--jess.Node
        |
        +--jess.HasLHS
              |
              +--jess.Defrule

public class Defrule
extends HasLHS
implements java.io.Serializable

Class used to represent Defrules. These are constructed by the parser.

(C) 1997 Ernest J. Friedman-Hill and Sandia National Laboratories

Author:
Ernest J. Friedman-Hill
See Also:
Serialized Form

Fields inherited from class jess.Node
LEFT, m_usecount, RIGHT
 
Method Summary
 boolean callNodeLeft(Token token)
          All we need to do is create or destroy the appropriate Activation object, which contains enough info to fire a rule.
 int evalSalience()
          Evaluate the salience of this rule.
 Funcall getAction(int idx)
          Fetch the idx-th RHS action of this rule
 int getId()
          Fetch the unique id of this rule.
 int getNActions()
          Fetch the number of actions on this rule's RHS
 int getSalience()
          Fetch the salience setting of this rule
 java.lang.String toString()
          Pretty-print this rule.
 
Methods inherited from class jess.HasLHS
getDocstring, getName, getNodeIndexHash, getNPatterns, getPattern, listNodes, setNodeIndexHash
 
Methods inherited from class jess.Node
addJessListener, removeJessListener, succ
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getSalience

public final int getSalience()
Fetch the salience setting of this rule
Returns:
The salience of this defrule

evalSalience

public int evalSalience()
                 throws JessException
Evaluate the salience of this rule. If the salience was set to a Funcall value during parsing, then this function may return different values over time. If the salience is constant, this is equivalent to getSalience.
Parameters:
engine - The Rete engine the rule belongs to
Returns:
The evaluated salience
Throws:
JessException - If something goes wrong

getId

public int getId()
Fetch the unique id of this rule.
Returns:
The id.

callNodeLeft

public boolean callNodeLeft(Token token)
                     throws JessException
All we need to do is create or destroy the appropriate Activation object, which contains enough info to fire a rule.
Parameters:
token -  
callType -  
Returns:
 
Throws:
JessException -  

getNActions

public int getNActions()
Fetch the number of actions on this rule's RHS
Returns:
The number of actions

getAction

public Funcall getAction(int idx)
Fetch the idx-th RHS action of this rule
Returns:
The action as a Funcall

toString

public java.lang.String toString()
Pretty-print this rule. The intent is that the output of this function can be reparsed to recreate the rule.
Overrides:
toString in class java.lang.Object
Returns:
Pretty-printed text of rule.

© 1997 E.J. Friedman-Hill and Sandia Corporation