souffle
2.0.2-371-g6315b36
|
Go to the documentation of this file.
49 class ParallelAggregate :
public Aggregate,
public AbstractParallel {
61 void print(std::ostream& os,
int tabpos)
const override {
62 os <<
times(
" ", tabpos);
ParallelAggregate(Own< Operation > nested, AggregateOp fun, std::string rel, Own< Expression > expression, Own< Condition > condition, int ident)
const Condition & getCondition() const
Get condition.
void print(std::ostream &os, int tabpos) const override
Pretty print with indentation.
AggregateOp
Types of aggregation functions.
Operation & getOperation() const
Get nested operation.
void print(std::ostream &os, int) const
ParallelAggregate * clone() const override
Create a clone (i.e.
const std::string relation
Search relation.
auto clone(const std::vector< A * > &xs)
detail::multiplying_printer< T > times(const T &value, unsigned num)
A utility printing a given value multiple times.
Own< Expression > expression
Aggregation expression.
Aggregation function applied on some relation.
Parallel Aggregation function applied on some relation.
int getTupleId() const
Get identifier.
bool isTrue(const Condition *cond)
Determines if a condition represents true.
int identifier
Identifier for the tuple, corresponding to its position in the loop nest.
void rel(size_t limit, bool showLimit=true)
void print(std::ostream &os, int tabpos) const override
Pretty print with indentation.
Own< Condition > condition
Aggregation tuple condition.