org.holtz.zoe
Class StatementList

java.lang.Object
  extended by org.holtz.zoe.Expression
      extended by org.holtz.zoe.StatementList

public class StatementList
extends Expression

A list of Statements of a Bug, constituting a block statement in a Zoel program.

Author:
Brian Holtz

Field Summary
 java.util.ArrayList<Statement> statements
           
 
Constructor Summary
StatementList()
           
StatementList(java.util.ArrayList<Statement> statements2Copy)
           
StatementList(java.util.Random random, int maxStatements)
           
StatementList(StatementList theStatements)
           
StatementList(StatementList mom, StatementList dad, java.util.Random random)
           
 
Method Summary
 StatementList add(Statement statement)
           
 StatementList copy()
           
 Statement mutate(int nth, java.util.Random random)
           
 StatementListCall nthPosition(java.lang.Integer[] nth)
           
static StatementList parse(ZoelTokenizer zoelTokenizer)
           
 StatementListCall randomPosition(java.util.Random random)
           
 java.lang.String toString()
           
 java.lang.String toString(java.lang.String separator)
           
 java.lang.String toString(java.lang.String stmtSeparator, Expression currExpr, java.lang.String cursor)
           
 int totalStatements()
           
 
Methods inherited from class org.holtz.zoe.Expression
parse
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

statements

public java.util.ArrayList<Statement> statements
Constructor Detail

StatementList

public StatementList()

StatementList

public StatementList(java.util.Random random,
                     int maxStatements)

StatementList

public StatementList(java.util.ArrayList<Statement> statements2Copy)

StatementList

public StatementList(StatementList theStatements)

StatementList

public StatementList(StatementList mom,
                     StatementList dad,
                     java.util.Random random)
Method Detail

copy

public StatementList copy()
Specified by:
copy in class Expression

add

public StatementList add(Statement statement)

totalStatements

public int totalStatements()
Overrides:
totalStatements in class Expression

nthPosition

public StatementListCall nthPosition(java.lang.Integer[] nth)

randomPosition

public StatementListCall randomPosition(java.util.Random random)

mutate

public Statement mutate(int nth,
                        java.util.Random random)

toString

public java.lang.String toString()
Specified by:
toString in class Expression

toString

public java.lang.String toString(java.lang.String separator)

toString

public java.lang.String toString(java.lang.String stmtSeparator,
                                 Expression currExpr,
                                 java.lang.String cursor)
Specified by:
toString in class Expression

parse

public static StatementList parse(ZoelTokenizer zoelTokenizer)
                           throws java.lang.Exception
Throws:
java.lang.Exception