diff options
author | bjormel <bjormel@yahooinc.com> | 2023-10-26 13:59:28 +0000 |
---|---|---|
committer | bjormel <bjormel@yahooinc.com> | 2023-10-26 13:59:28 +0000 |
commit | 567be9a1f6353cec41c23bfd1fcd46b4b2a4d2d7 (patch) | |
tree | 4664a743e166a5e11aee7b9acd70ad8ee2617612 /searchlib/src/vespa/searchlib/common/bitvectoriterator.h | |
parent | e9058b555d4dfea2f6c872d9a677e8678b569569 (diff) | |
parent | bce3b8e926bf9da880172acbe1ba4b12d5e026d6 (diff) |
Merge branch 'master' into bjormel/aws-main-controllerbjormel/aws-main-controller
Diffstat (limited to 'searchlib/src/vespa/searchlib/common/bitvectoriterator.h')
-rw-r--r-- | searchlib/src/vespa/searchlib/common/bitvectoriterator.h | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/searchlib/src/vespa/searchlib/common/bitvectoriterator.h b/searchlib/src/vespa/searchlib/common/bitvectoriterator.h index 08d2e76f9ee..fb7456222f3 100644 --- a/searchlib/src/vespa/searchlib/common/bitvectoriterator.h +++ b/searchlib/src/vespa/searchlib/common/bitvectoriterator.h @@ -1,4 +1,4 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #pragma once @@ -20,17 +20,16 @@ protected: const BitVector & _bv; private: void visitMembers(vespalib::ObjectVisitor &visitor) const override; - void doUnpack(uint32_t docId) override final { + void doUnpack(uint32_t docId) final { _tfmd.resetOnlyDocId(docId); } - bool isBitVector() const override { return true; } + BitVectorMeta asBitVector() const noexcept override { return {&_bv, _docIdLimit, isInverted()}; } fef::TermFieldMatchData &_tfmd; public: virtual bool isInverted() const = 0; - const void *getBitValues() const { return _bv.getStart(); } Trinary is_strict() const override { return Trinary::False; } - uint32_t getDocIdLimit() const { return _docIdLimit; } + uint32_t getDocIdLimit() const noexcept { return _docIdLimit; } static UP create(const BitVector *const other, fef::TermFieldMatchData &matchData, bool strict, bool inverted = false); static UP create(const BitVector *const other, uint32_t docIdLimit, fef::TermFieldMatchData &matchData, bool strict, bool inverted = false); |