com.epochx.representation.bool
Class OrFunction

java.lang.Object
  extended by com.epochx.representation.Node<TYPE>
      extended by com.epochx.representation.FunctionNode<java.lang.Boolean>
          extended by com.epochx.representation.bool.OrFunction
All Implemented Interfaces:
java.lang.Cloneable

public class OrFunction
extends FunctionNode<java.lang.Boolean>

A FunctionNode which performs logical disjunction.


Constructor Summary
OrFunction()
          Construct an OrFunction with no children.
OrFunction(Node<java.lang.Boolean> child1, Node<java.lang.Boolean> child2)
          Construct an OrFunction with two children.
 
Method Summary
 java.lang.Boolean evaluate()
          Evaluating an OrFunction involves combining the evaluation of the children according to the rules of OR where if both children evaluate to false then the result will be false.
 java.lang.String getFunctionName()
          Get the unique name that identifies this function.
 
Methods inherited from class com.epochx.representation.FunctionNode
equals, toString
 
Methods inherited from class com.epochx.representation.Node
clone, getArity, getChild, getChildren, getDepth, getFunctionNodes, getLength, getNodesAtDepth, getNoDistinctFunctions, getNoDistinctTerminals, getNoFunctions, getNoTerminals, getNthNode, getTerminalNodes, hashCode, setChild, setChildren, setNthNode
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OrFunction

public OrFunction()
Construct an OrFunction with no children.


OrFunction

public OrFunction(Node<java.lang.Boolean> child1,
                  Node<java.lang.Boolean> child2)
Construct an OrFunction with two children. When evaluated, if both children evaluate to false then the result will be false. All other combinations will return a result of true.

Parameters:
child1 - The first child node.
child2 - The second child node.
Method Detail

evaluate

public java.lang.Boolean evaluate()
Evaluating an OrFunction involves combining the evaluation of the children according to the rules of OR where if both children evaluate to false then the result will be false. All other combinations will return a result of true.

Specified by:
evaluate in class Node<java.lang.Boolean>
Returns:
The result of evaluating the candidate program.

getFunctionName

public java.lang.String getFunctionName()
Get the unique name that identifies this function.

Specified by:
getFunctionName in class FunctionNode<java.lang.Boolean>
Returns:
the unique name for the OrFunction which is OR.