aboutsummaryrefslogtreecommitdiffstats
path: root/searchlib/src/vespa/searchlib/attribute/i_docid_with_weight_posting_store.h
blob: 04b711884939b123a7fea717049ae4f2e0a4c0d8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.

#pragma once

#include "i_direct_posting_store.h"

namespace search {

/**
 * Interface providing access to dictionary lookups and underlying posting lists that contains {docid, weight} tuples.
 *
 * This posting store type is supported by some multi-value attributes with fast-search.
 */
class IDocidWithWeightPostingStore : public IDirectPostingStore {
public:
    using IteratorType = DocidWithWeightIterator;

    virtual void create(vespalib::datastore::EntryRef idx, std::vector<DocidWithWeightIterator>& dst) const = 0;
    virtual DocidWithWeightIterator create(vespalib::datastore::EntryRef idx) const = 0;
};

}