com.waveset.expression
Class ExRule

java.lang.Object
  extended bycom.waveset.expression.ExNode
      extended bycom.waveset.expression.ExRule
All Implemented Interfaces:
com.sun.idm.debugger.common.Locatable

public class ExRule
extends ExNode

A node used to represent a call to an external rule. Rules are similar to functions except that arguments are passed as a set of keyword arguments (name/value pairs) rather than by position. The implementation of the rule is always external, there is no XPRESS syntax for defining rules.


Nested Class Summary
static class ExRule.Argument
          A node found only within expressions to represent the arguments to the rule.
 
Field Summary
static java.lang.String code_id
           
 
Fields inherited from class com.waveset.expression.ExNode
_bindingCount, _children, _decoration, _parent, trace
 
Constructor Summary
ExRule()
          Build a rule node.
 
Method Summary
protected  ExValue evalInternal(ExState state)
          Evalute the rule call node.
 java.lang.String getFunctionName()
          Return our function name.
 java.lang.String getName()
          Get the name of the rule.
 boolean isPassThrough()
          Get the passThrough option.
 void parseXml(org.w3c.dom.Element el)
          Parse the XML representation, and flesh out the object.
 void setName(java.lang.String name)
           
 void setPassThrough(boolean b)
           
 void toXmlAttributes(java.lang.StringBuffer b)
          Add our attributes to the default XML serialization.
 
Methods inherited from class com.waveset.expression.ExNode
addChild, addChildren, addCommonAttributes, beginTrace, clearOwner, endTrace, eval, evalChild, evalChildToObject, evalChildToString, evalToBoolean, evalToInt, evalToObject, evalToString, getBindingCount, getChild, getChildren, getDecoration, getHiddenVariable, getLocation, getOwner, getParent, isLiteral, parseCommonAttributes, postProcess, removeChild, resolveFunction, resolveVariable, setBindingCount, setChildren, setDecoration, setEnvironment, setLocation, setOwner, setOwner, setParent, toXml, toXml, toXml, toXmlChildren
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

code_id

public static final java.lang.String code_id
See Also:
Constant Field Values
Constructor Detail

ExRule

public ExRule()
Build a rule node.

Method Detail

setName

public void setName(java.lang.String name)

setPassThrough

public void setPassThrough(boolean b)

getFunctionName

public java.lang.String getFunctionName()
Return our function name.

Specified by:
getFunctionName in class ExNode

parseXml

public void parseXml(org.w3c.dom.Element el)
              throws WavesetException
Parse the XML representation, and flesh out the object.

Overrides:
parseXml in class ExNode
Throws:
WavesetException

toXmlAttributes

public void toXmlAttributes(java.lang.StringBuffer b)
Add our attributes to the default XML serialization.

Overrides:
toXmlAttributes in class ExNode

getName

public java.lang.String getName()
Get the name of the rule.


isPassThrough

public boolean isPassThrough()
Get the passThrough option.


evalInternal

protected ExValue evalInternal(ExState state)
                        throws WavesetException
Evalute the rule call node.

Specified by:
evalInternal in class ExNode
Throws:
WavesetException