summaryrefslogtreecommitdiff
path: root/src/mongo/db/matcher/expression_type.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/matcher/expression_type.h')
-rw-r--r--src/mongo/db/matcher/expression_type.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/mongo/db/matcher/expression_type.h b/src/mongo/db/matcher/expression_type.h
index aa2860b8fd2..02369d01b1d 100644
--- a/src/mongo/db/matcher/expression_type.h
+++ b/src/mongo/db/matcher/expression_type.h
@@ -140,6 +140,14 @@ public:
StringData name() const final {
return kName;
}
+
+ void acceptVisitor(MatchExpressionMutableVisitor* visitor) final {
+ visitor->visit(this);
+ }
+
+ void acceptVisitor(MatchExpressionConstVisitor* visitor) const final {
+ visitor->visit(this);
+ }
};
/**
@@ -165,6 +173,14 @@ public:
MatchCategory getCategory() const final {
return MatchCategory::kOther;
}
+
+ void acceptVisitor(MatchExpressionMutableVisitor* visitor) final {
+ visitor->visit(this);
+ }
+
+ void acceptVisitor(MatchExpressionConstVisitor* visitor) const final {
+ visitor->visit(this);
+ }
};
class InternalSchemaBinDataSubTypeExpression final : public LeafMatchExpression {
@@ -227,6 +243,14 @@ public:
return _binDataSubType == realOther->_binDataSubType;
}
+ void acceptVisitor(MatchExpressionMutableVisitor* visitor) final {
+ visitor->visit(this);
+ }
+
+ void acceptVisitor(MatchExpressionConstVisitor* visitor) const final {
+ visitor->visit(this);
+ }
+
private:
ExpressionOptimizerFunc getOptimizer() const final {
return [](std::unique_ptr<MatchExpression> expression) { return expression; };
@@ -287,5 +311,13 @@ public:
<< " of encrypted binary data (0, 1 and 2 are allowed)");
}
}
+
+ void acceptVisitor(MatchExpressionMutableVisitor* visitor) final {
+ visitor->visit(this);
+ }
+
+ void acceptVisitor(MatchExpressionConstVisitor* visitor) const final {
+ visitor->visit(this);
+ }
};
} // namespace mongo