souffle
2.0.2-371-g6315b36
|
Transformation pass to rename aggregation variables to make them unique. More...
#include <UniqueAggregationVariables.h>
Public Member Functions | |
UniqueAggregationVariablesTransformer * | clone () const override |
std::string | getName () const override |
Public Member Functions inherited from souffle::ast::transform::Transformer | |
bool | apply (TranslationUnit &translationUnit) |
virtual | ~Transformer ()=default |
Private Member Functions | |
bool | transform (TranslationUnit &translationUnit) override |
Renames all local variables of the aggregate to something unique, so that the scope of the local variable is limited to the body of the aggregate subclause. More... | |
Transformation pass to rename aggregation variables to make them unique.
Definition at line 30 of file UniqueAggregationVariables.h.
|
inlineoverridevirtual |
Implements souffle::ast::transform::Transformer.
Definition at line 40 of file UniqueAggregationVariables.h.
|
inlineoverridevirtual |
Implements souffle::ast::transform::Transformer.
Definition at line 36 of file UniqueAggregationVariables.h.
|
overrideprivatevirtual |
Renames all local variables of the aggregate to something unique, so that the scope of the local variable is limited to the body of the aggregate subclause.
This assumes that we have simplified the target expression to a target variable.
Implements souffle::ast::transform::Transformer.
Definition at line 38 of file UniqueAggregationVariables.cpp.