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

Class ArraySizePredicate

src/QLPredicate.h:291–310  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

289};
290
291struct ArraySizePredicate : IPredicate, ReferenceCounted<ArraySizePredicate>, FastAllocated<ArraySizePredicate> {
292 void addref() override { ReferenceCounted<ArraySizePredicate>::addref(); }
293 void delref() override { ReferenceCounted<ArraySizePredicate>::delref(); }
294
295 TypeCode getTypeCode() const override { return TypeCode::ARRAY_SIZE; }
296
297 Future<bool> evaluate(Reference<IReadContext> const& context) override;
298 std::string toString() override;
299
300 // Is this correct?
301 void get_range(Optional<DataValue>& min, Optional<DataValue>& max) override {
302 DataValue arrayHeader = DataValue::arrayOfLength(size);
303 min = arrayHeader;
304 max = arrayHeader;
305 }
306
307 uint32_t size;
308
309 explicit ArraySizePredicate(uint32_t size) : size(size) {}
310};
311
312// RegExPredicate(expr, pred) to be defined ...
313struct RegExPredicate : IPredicate, ReferenceCounted<RegExPredicate>, FastAllocated<RegExPredicate> {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected