SQLsmith
v1.2.1-5-gfacd7a8
A random SQL query generator
|
Public Member Functions | |
virtual void | out (std::ostream &out) |
Emit SQL for this production. | |
table_subquery (prod *p, bool lateral=false) | |
virtual void | accept (prod_visitor *v) |
Visitor pattern for walking the AST. More... | |
Public Member Functions inherited from table_ref | |
table_ref (prod *p) | |
Public Member Functions inherited from prod | |
prod (prod *parent) | |
virtual void | indent (std::ostream &out) |
Newline and indent according to tree level. | |
virtual void | match () |
Check with the impedance matching code whether this production has been blacklisted and throw an exception. | |
virtual void | fail (const char *reason) |
Report a "failed to generate" error. | |
void | retry () |
Increase the retry count and throw an exception when retry_limit is exceeded. | |
Public Attributes | |
bool | is_lateral |
shared_ptr< struct query_spec > | query |
Public Attributes inherited from table_ref | |
vector< shared_ptr< named_relation > > | refs |
Public Attributes inherited from prod | |
struct prod * | pprod |
Parent production that instanciated this one. More... | |
struct scope * | scope |
Scope object to model column/table reference visibility. | |
int | level |
Level of this production in the AST. 0 for root node. | |
long | retries = 0 |
Number of retries in this production. More... | |
long | retry_limit = 100 |
Maximum number of retries allowed before reporting a failure to the Parent prod. | |
Additional Inherited Members | |
Static Public Member Functions inherited from table_ref | |
static shared_ptr< table_ref > | factory (prod *p) |
Definition at line 48 of file grammar.hh.
|
virtual |
Visitor pattern for walking the AST.
Make sure you visit all child production when deriving classes.
Reimplemented from prod.
Definition at line 91 of file grammar.cc.