summaryrefslogtreecommitdiff
path: root/src/mongo/db/query/index_entry.h
diff options
context:
space:
mode:
authorAnton Korshunov <anton.korshunov@mongodb.com>2019-11-15 10:19:14 +0000
committerevergreen <evergreen@mongodb.com>2019-11-15 10:19:14 +0000
commit73b456d5c059b17d1c7f0f8badb7c72391ee2173 (patch)
tree89451cae5a7cfbedb3a2faccd307bc870f7b0a40 /src/mongo/db/query/index_entry.h
parentcc3f2c8ba06e9e8c248a0d91a9efd5351311ca37 (diff)
downloadmongo-73b456d5c059b17d1c7f0f8badb7c72391ee2173.tar.gz
SERVER-43291 Consolidate projection execution interfaces
Diffstat (limited to 'src/mongo/db/query/index_entry.h')
-rw-r--r--src/mongo/db/query/index_entry.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/mongo/db/query/index_entry.h b/src/mongo/db/query/index_entry.h
index efe9179bc1d..d9eaf0ecdd7 100644
--- a/src/mongo/db/query/index_entry.h
+++ b/src/mongo/db/query/index_entry.h
@@ -32,7 +32,6 @@
#include <set>
#include <string>
-#include "mongo/db/exec/projection_exec_agg.h"
#include "mongo/db/field_ref.h"
#include "mongo/db/index/multikey_paths.h"
#include "mongo/db/index_names.h"
@@ -41,9 +40,11 @@
#include "mongo/util/str.h"
namespace mongo {
-
class CollatorInterface;
class MatchExpression;
+namespace projection_executor {
+class ProjectionExecutor;
+}
/**
* A CoreIndexInfo is a representation of an index in the catalog with parsed information which is
@@ -60,7 +61,7 @@ struct CoreIndexInfo {
Identifier ident,
const MatchExpression* fe = nullptr,
const CollatorInterface* ci = nullptr,
- const ProjectionExecAgg* projExec = nullptr)
+ projection_executor::ProjectionExecutor* projExec = nullptr)
: identifier(std::move(ident)),
keyPattern(kp),
filterExpr(fe),
@@ -137,7 +138,7 @@ struct CoreIndexInfo {
// For $** indexes, a pointer to the projection executor owned by the index access method. Null
// unless this IndexEntry represents a wildcard index, in which case this is always non-null.
- const ProjectionExecAgg* wildcardProjection = nullptr;
+ projection_executor::ProjectionExecutor* wildcardProjection = nullptr;
};
/**
@@ -159,7 +160,7 @@ struct IndexEntry : CoreIndexInfo {
const MatchExpression* fe,
const BSONObj& io,
const CollatorInterface* ci,
- const ProjectionExecAgg* projExec)
+ projection_executor::ProjectionExecutor* projExec)
: CoreIndexInfo(kp, type, sp, std::move(ident), fe, ci, projExec),
multikey(mk),
multikeyPaths(mkp),