| souffle
    2.0.2-371-g6315b36
    | 
A relational algebra query. More...
#include <Query.h>


| Public Member Functions | |
| void | apply (const NodeMapper &map) override | 
| Apply the mapper to all child nodes.  More... | |
| Query * | clone () const override | 
| Create a clone (i.e.  More... | |
| std::vector< const Node * > | getChildNodes () const override | 
| Obtain list of all embedded child nodes.  More... | |
| const Operation & | getOperation () const | 
| Get RAM operation.  More... | |
| Query (Own< Operation > o) | |
|  Public Member Functions inherited from souffle::ram::Node | |
| bool | operator!= (const Node &other) const | 
| Inequality check for two RAM nodes.  More... | |
| bool | operator== (const Node &other) const | 
| Equivalence check for two RAM nodes.  More... | |
| virtual void | rewrite (const Node *oldNode, Own< Node > newNode) | 
| Rewrite a child node.  More... | |
| virtual | ~Node ()=default | 
| Protected Member Functions | |
| bool | equal (const Node &node) const override | 
| Equality check for two RAM nodes.  More... | |
| void | print (std::ostream &os, int tabpos) const override | 
| Pretty print with indentation.  More... | |
|  Protected Member Functions inherited from souffle::ram::Statement | |
| void | print (std::ostream &os) const override | 
| Print RAM node.  More... | |
| Protected Attributes | |
| Own< Operation > | operation | 
| RAM operation.  More... | |
| Additional Inherited Members | |
|  Static Protected Member Functions inherited from souffle::ram::Statement | |
| static void | print (const Statement *statement, std::ostream &os, int tabpos) | 
| Pretty print jump-bed.  More... | |
A relational algebra query.
Corresponds to the core machinery of semi-naive evaluation
For example:
| 
 | inlineoverridevirtual | 
Apply the mapper to all child nodes.
Reimplemented from souffle::ram::Node.
Definition at line 69 of file Query.h.
References operation, and souffle::times().

| 
 | inlineoverridevirtual | 
Create a clone (i.e.
deep copy) of this node
Implements souffle::ram::Statement.
Definition at line 65 of file Query.h.
References souffle::map(), and operation.

| 
 | inlineoverrideprotectedvirtual | 
Equality check for two RAM nodes.
Default action is that nothing needs to be checked.
Reimplemented from souffle::ram::Node.
| 
 | inlineoverridevirtual | 
Obtain list of all embedded child nodes.
Reimplemented from souffle::ram::Node.
Definition at line 61 of file Query.h.
References souffle::clone(), operation, and Query().

| 
 | inline | 
Get RAM operation.
Definition at line 57 of file Query.h.
References operation.
Referenced by souffle::ram::transform::HoistAggregateTransformer::hoistAggregate().
| 
 | inlineoverrideprotectedvirtual | 
Pretty print with indentation.
Implements souffle::ram::Statement.
Definition at line 74 of file Query.h.
References souffle::equal_ptr(), and operation.

RAM operation.
Definition at line 85 of file Query.h.
Referenced by apply(), clone(), getChildNodes(), getOperation(), print(), and Query().
 1.8.17
 1.8.17