#include "processor/operator/persistent/set.h"
#include "binder/expression/expression_util.h"
namespace lbug {
namespace processor {
void SetNodeProperty::initLocalStateInternal(ResultSet* resultSet, ExecutionContext* context) {
for (auto& executor : executors) {
executor->init(resultSet, context);
}
}
bool SetNodeProperty::getNextTuplesInternal(ExecutionContext* context) {
if (!children[0]->getNextTuple(context)) {
return false;
}
for (auto& executor : executors) {
executor->set(context);
}
return true;
}
void SetRelProperty::initLocalStateInternal(ResultSet* resultSet, ExecutionContext* context) {
for (auto& executor : executors) {
executor->init(resultSet, context);
}
}
bool SetRelProperty::getNextTuplesInternal(ExecutionContext* context) {
if (!children[0]->getNextTuple(context)) {
return false;
}
for (auto& executor : executors) {
executor->set(context);
}
return true;
}
std::string SetPropertyPrintInfo::toString() const {
std::string result = "Properties: ";
result += binder::ExpressionUtil::toString(expressions);
return result;
}
} }