Package org.h2.test.synth
Class BnfRandom
- java.lang.Object
-
- org.h2.test.synth.BnfRandom
-
- All Implemented Interfaces:
BnfVisitor
public class BnfRandom extends java.lang.Object implements BnfVisitor
A BNF visitor that generates a random SQL statement.
-
-
Constructor Summary
Constructors Constructor Description BnfRandom()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetRandomSQL()intgetStatementCount()voidsetSeed(int seed)voidvisitRuleElement(boolean keyword, java.lang.String name, Rule link)Visit a rule element.voidvisitRuleExtension(Rule rule, boolean compatibility)Visit a rule with non-standard extension.voidvisitRuleFixed(int type)Visit a fixed rule.voidvisitRuleList(boolean or, java.util.ArrayList<Rule> list)Visit a rule list.voidvisitRuleOptional(java.util.ArrayList<Rule> list)Visit an OR list of optional rules.voidvisitRuleOptional(Rule rule)Visit an optional rule.voidvisitRuleRepeat(boolean comma, Rule rule)Visit a repeat rule.
-
-
-
Method Detail
-
getRandomSQL
public java.lang.String getRandomSQL()
-
visitRuleElement
public void visitRuleElement(boolean keyword, java.lang.String name, Rule link)Description copied from interface:BnfVisitorVisit a rule element.- Specified by:
visitRuleElementin interfaceBnfVisitor- Parameters:
keyword- whether this is a keywordname- the element namelink- the linked rule if it's not a keyword
-
visitRuleFixed
public void visitRuleFixed(int type)
Description copied from interface:BnfVisitorVisit a fixed rule.- Specified by:
visitRuleFixedin interfaceBnfVisitor- Parameters:
type- the type
-
visitRuleList
public void visitRuleList(boolean or, java.util.ArrayList<Rule> list)Description copied from interface:BnfVisitorVisit a rule list.- Specified by:
visitRuleListin interfaceBnfVisitor- Parameters:
or- true for OR, false for ANDlist- the rules
-
visitRuleOptional
public void visitRuleOptional(Rule rule)
Description copied from interface:BnfVisitorVisit an optional rule.- Specified by:
visitRuleOptionalin interfaceBnfVisitor- Parameters:
rule- the rule
-
visitRuleOptional
public void visitRuleOptional(java.util.ArrayList<Rule> list)
Description copied from interface:BnfVisitorVisit an OR list of optional rules.- Specified by:
visitRuleOptionalin interfaceBnfVisitor- Parameters:
list- the optional rules
-
visitRuleRepeat
public void visitRuleRepeat(boolean comma, Rule rule)Description copied from interface:BnfVisitorVisit a repeat rule.- Specified by:
visitRuleRepeatin interfaceBnfVisitor- Parameters:
comma- whether the comma is repeated as wellrule- the element to repeat
-
visitRuleExtension
public void visitRuleExtension(Rule rule, boolean compatibility)
Description copied from interface:BnfVisitorVisit a rule with non-standard extension.- Specified by:
visitRuleExtensionin interfaceBnfVisitor- Parameters:
rule- the rulecompatibility- whether this rule exists for compatibility only
-
setSeed
public void setSeed(int seed)
-
getStatementCount
public int getStatementCount()
-
-