blob: bbc6d46f5b7129fd5348a83e3885ec240e083d8c (
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
24
25
26
27
28
29
|
// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
#include "attributevector.h"
#include "i_enum_store.h"
#include "loadedenumvalue.h"
namespace search {
class ReaderBase;
class NumericAttribute : public AttributeVector
{
protected:
using EnumIndex = IEnumStore::Index;
using EnumVector = IEnumStore::EnumVector;
NumericAttribute(const vespalib::string & name, const AttributeVector::Config & cfg)
: AttributeVector(name, cfg)
{ }
virtual void load_enumerated_data(ReaderBase& attrReader, enumstore::EnumeratedPostingsLoader& loader, size_t num_values);
virtual void load_enumerated_data(ReaderBase& attrReader, enumstore::EnumeratedLoader& loader);
virtual void load_posting_lists_and_update_enum_store(enumstore::EnumeratedPostingsLoader& loader);
bool onAddDoc(DocId) override { return true; }
};
} // namespace search
|