com.waveset.expression
Class ExFunction.f_not

java.lang.Object
  extended bycom.waveset.expression.ExNode
      extended bycom.waveset.expression.ExFunction.f_not
All Implemented Interfaces:
com.sun.idm.debugger.common.Locatable
Enclosing class:
ExFunction

public static class ExFunction.f_not
extends ExNode

The function node for the <not> expression.

The not expression returns the integer 1 if the value of the first subexpression is logically false, and the integer 0 if the subexpression value is logically true. There may be only one subexpression.

Logical truth is defined by the ExValue.isTrue() method. Essentially, any string or object value that is non-null or any integer value that is non-zero, is considered logically true.


Field Summary
 
Fields inherited from class com.waveset.expression.ExNode
_bindingCount, _children, _decoration, _parent, code_id, trace
 
Constructor Summary
ExFunction.f_not()
           
 
Method Summary
protected  ExValue evalInternal(ExState state)
          Abstract evaluation method all nodes must have.
 java.lang.String getFunctionName()
          Nodes representing functions must have a name.
 
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, parseXml, postProcess, removeChild, resolveFunction, resolveVariable, setBindingCount, setChildren, setDecoration, setEnvironment, setLocation, setOwner, setOwner, setParent, toXml, toXml, toXml, toXmlAttributes, toXmlChildren
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExFunction.f_not

public ExFunction.f_not()
Method Detail

getFunctionName

public java.lang.String getFunctionName()
Description copied from class: ExNode
Nodes representing functions must have a name. This name is used in the formatting of default trace messages and the default XML rendering. If a node doesn't have a name for some reason, or needs more control over the trace messges and XML, they must overload beginTrace, endTrace, and toXml below.

Specified by:
getFunctionName in class ExNode

evalInternal

protected ExValue evalInternal(ExState state)
                        throws WavesetException
Description copied from class: ExNode
Abstract evaluation method all nodes must have. Implementations of evalInternal need not (and should not) perform any tracing/breakpoints. This is all handled by the calling method eval.

Specified by:
evalInternal in class ExNode
Throws:
WavesetException