souffle
2.0.2-371-g6315b36
|
Abstract class for aggregation. More...
#include <AbstractAggregate.h>
Public Member Functions | |
AbstractAggregate (AggregateOp fun, Own< Expression > expr, Own< Condition > cond) | |
std::vector< const Node * > | getChildNodes () const |
const Condition & | getCondition () const |
Get condition. More... | |
const Expression & | getExpression () const |
Get target expression. More... | |
AggregateOp | getFunction () const |
Get aggregation function. More... | |
virtual | ~AbstractAggregate ()=default |
Protected Member Functions | |
bool | equal (const Node &node) const |
void | print (std::ostream &os, int) const |
Protected Attributes | |
Own< Condition > | condition |
Aggregation tuple condition. More... | |
Own< Expression > | expression |
Aggregation expression. More... | |
const AggregateOp | function |
Aggregation function. More... | |
Abstract class for aggregation.
A particular function (e.g. MIN) is applied given a that a condition holds
Definition at line 42 of file AbstractAggregate.h.
|
inline |
Definition at line 44 of file AbstractAggregate.h.
|
virtualdefault |
|
inlineprotected |
Definition at line 94 of file AbstractAggregate.h.
|
inline |
Definition at line 69 of file AbstractAggregate.h.
References souffle::FMIN, and souffle::MIN.
Referenced by souffle::ram::Aggregate::Aggregate(), and souffle::ram::IndexAggregate::IndexAggregate().
|
inline |
Get condition.
Definition at line 53 of file AbstractAggregate.h.
Referenced by souffle::ram::ParallelAggregate::print().
|
inline |
Get target expression.
Definition at line 64 of file AbstractAggregate.h.
References condition, and expression.
|
inline |
|
inlineprotected |
Definition at line 74 of file AbstractAggregate.h.
Referenced by souffle::ram::ParallelAggregate::clone().
Aggregation tuple condition.
Definition at line 107 of file AbstractAggregate.h.
Referenced by souffle::ram::Aggregate::clone(), getExpression(), and souffle::ram::ParallelAggregate::ParallelAggregate().
|
protected |
Aggregation expression.
Definition at line 104 of file AbstractAggregate.h.
Referenced by souffle::ram::Aggregate::clone(), getExpression(), getFunction(), and souffle::ram::ParallelAggregate::ParallelAggregate().
|
protected |
Aggregation function.
Definition at line 101 of file AbstractAggregate.h.