1
0
Fork 0

Revert "remove unused ctor"

This reverts commit 565009db68.
This commit is contained in:
jsteemann 2016-11-08 17:01:58 +01:00
parent 9d2d113a17
commit cb774beacf
2 changed files with 31 additions and 0 deletions

View File

@ -347,6 +347,33 @@ arangodb::traverser::TraverserOptions::TraverserOptions(
useBreadthFirst); useBreadthFirst);
} }
arangodb::traverser::TraverserOptions::TraverserOptions(
TraverserOptions const& other)
: _trx(other._trx),
_baseVertexExpression(nullptr),
_tmpVar(nullptr),
_ctx(new aql::FixedVarExpressionContext()),
_isCoordinator(arangodb::ServerState::instance()->isCoordinator()),
minDepth(other.minDepth),
maxDepth(other.maxDepth),
useBreadthFirst(other.useBreadthFirst),
uniqueVertices(other.uniqueVertices),
uniqueEdges(other.uniqueEdges) {
TRI_ASSERT(other._baseLookupInfos.empty());
TRI_ASSERT(other._depthLookupInfo.empty());
TRI_ASSERT(other._vertexExpressions.empty());
TRI_ASSERT(other._tmpVar == nullptr);
TRI_ASSERT(other._baseVertexExpression == nullptr);
// Check for illegal option combination:
TRI_ASSERT(uniqueEdges !=
arangodb::traverser::TraverserOptions::UniquenessLevel::GLOBAL);
TRI_ASSERT(
uniqueVertices !=
arangodb::traverser::TraverserOptions::UniquenessLevel::GLOBAL ||
useBreadthFirst);
}
arangodb::traverser::TraverserOptions::~TraverserOptions() { arangodb::traverser::TraverserOptions::~TraverserOptions() {
for (auto& pair : _vertexExpressions) { for (auto& pair : _vertexExpressions) {
delete pair.second; delete pair.second;

View File

@ -135,6 +135,10 @@ struct TraverserOptions {
TraverserOptions(arangodb::aql::Query*, arangodb::velocypack::Slice, TraverserOptions(arangodb::aql::Query*, arangodb::velocypack::Slice,
arangodb::velocypack::Slice); arangodb::velocypack::Slice);
/// @brief This copy constructor is only working during planning phase.
/// After planning this node should not be copied anywhere.
TraverserOptions(TraverserOptions const&);
virtual ~TraverserOptions(); virtual ~TraverserOptions();
/// @brief Build a velocypack for cloning in the plan. /// @brief Build a velocypack for cloning in the plan.