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. | |
funcall (prod *p, sqltype *type_constraint=0, bool agg=0) | |
virtual void | accept (prod_visitor *v) |
Visitor pattern for walking the AST. More... | |
Public Member Functions inherited from value_expr | |
value_expr (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 | |
routine * | proc |
bool | is_aggregate |
vector< shared_ptr< value_expr > > | parms |
Public Attributes inherited from value_expr | |
sqltype * | type |
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 value_expr | |
static shared_ptr< value_expr > | factory (prod *p, sqltype *type_constraint=0) |
|
inlinevirtual |
Visitor pattern for walking the AST.
Make sure you visit all child production when deriving classes.
Reimplemented from prod.
Definition at line 38 of file expr.hh.
References prod::accept().