Package ec.gp.ge

# Class GrammarRuleNode

java.lang.Object
ec.gp.ge.GrammarNode
ec.gp.ge.GrammarRuleNode

All Implemented Interfaces:
  `Serializable`

public class GrammarRuleNode extends GrammarNode
A GrammarNode representing a Rule in the GE Grammar. The head of the GrammarRuleNode is the name of the rule; and the children are the various choices. These are returned by getChoice(...) and getNumChoices(). The merge(...) method unifies this GrammarRuleNode with the choices of another node.

See Also:
  - Serialized Form

- ## Field Summary

  ### Fields inherited from class ec.gp.ge.GrammarNode

  `children`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `GrammarRuleNode(String head)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addChoice(GrammarNode choice)`
  Adds a choice to the children of this node.
  `GrammarNode`
  `getChoice(int index)`
  Returns a given choice.
  `int`
  `getNumChoices()`
  Returns the current number of choices to the node.
  `void`
  `merge(GrammarRuleNode other)`
  Adds to this node all the choices of another node.
  `String`
  `toString()`
  A better toString() function -- khaled

  ### Methods inherited from class ec.gp.ge.GrammarNode

  `equals, getHead, hashCode`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### GrammarRuleNode

    public GrammarRuleNode(String head)

- ## Method Details

  - ### addChoice

    public void addChoice(GrammarNode choice)
    Adds a choice to the children of this node.

  - ### getNumChoices

    public int getNumChoices()
    Returns the current number of choices to the node.

  - ### getChoice

    public GrammarNode getChoice(int index)
    Returns a given choice.

  - ### merge

    public void merge(GrammarRuleNode other)
    Adds to this node all the choices of another node.

  - ### toString

    public String toString()
    A better toString() function -- khaled
    Specified by:
      `toString` in class `GrammarNode`