MCPcopy Create free account
hub / github.com/FoundationDB/fdb-document-layer / AndPredicate

Class AndPredicate

src/QLPredicate.h:153–170  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

151};
152
153struct AndPredicate : IPredicate, ReferenceCounted<AndPredicate>, FastAllocated<AndPredicate> {
154 void addref() override { ReferenceCounted<AndPredicate>::addref(); }
155 void delref() override { ReferenceCounted<AndPredicate>::delref(); }
156
157 TypeCode getTypeCode() const override { return TypeCode::AND; }
158
159 std::vector<Reference<IPredicate>> terms;
160
161 explicit AndPredicate(std::vector<Reference<IPredicate>> const& terms) : terms(terms) {}
162 AndPredicate(Reference<IPredicate> const& term1, Reference<IPredicate> const& term2) : terms({term1, term2}) {}
163
164 Future<bool> evaluate(Reference<IReadContext> const& context) override;
165 Reference<IPredicate> simplify() override;
166 std::string toString() override;
167
168 Reference<IPredicate> simplify_not() override;
169 void simplify_and(SimplifyAndContext& combinable) override;
170};
171
172struct OrPredicate : IPredicate, ReferenceCounted<OrPredicate>, FastAllocated<OrPredicate> {
173 void addref() override { ReferenceCounted<OrPredicate>::addref(); }

Callers 1

simplify_notMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected