diff options
Diffstat (limited to 'src/mongo/db/matcher/expression_type.h')
-rw-r--r-- | src/mongo/db/matcher/expression_type.h | 32 |
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 |