aboutsummaryrefslogtreecommitdiffstats
path: root/streamingvisitors/src/vespa/vsm/searcher/utf8strchrfieldsearcher.h
blob: 663ee3a1a62f35986e3726e3f3d5277001f0e7ef (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 "utf8stringfieldsearcherbase.h"

namespace vsm {

/**
 * This class does normal utf8 searches.
 * This class uses an highly optimized version of the tokenize method in fastlib.
 **/
class UTF8StrChrFieldSearcher : public UTF8StringFieldSearcherBase
{
public:
    std::unique_ptr<FieldSearcher> duplicate() const override;
    explicit UTF8StrChrFieldSearcher(FieldIdT fId) : UTF8StringFieldSearcherBase(fId) { }
protected:
    size_t matchTerm(const FieldRef & f, search::streaming::QueryTerm & qt) override;
    size_t matchTerms(const FieldRef & f, size_t shortestTerm) override;
};

}