This file is indexed.

/usr/include/columbus1/Matcher.hh is in libcolumbus1-dev 1.1.0+14.04.20140325.3-0ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
/*
 * Copyright (C) 2012 Canonical, Ltd.
 *
 * Authors:
 *    Jussi Pakkanen <jussi.pakkanen@canonical.com>
 *
 * This library is free software; you can redistribute it and/or modify it under
 * the terms of version 3 of the GNU Lesser General Public License as published
 * by the Free Software Foundation.
 *
 * This library is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
 * details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#ifndef MATCHER_HH_
#define MATCHER_HH_

#include "ColumbusCore.hh"
#include<string>

COL_NAMESPACE_START

class Corpus;
struct MatcherPrivate;
class Word;
class Document;
class WordList;
class MatchResults;
class ErrorValues;
class IndexWeights;
class ResultFilter;
class SearchParameters;

class COL_PUBLIC Matcher final {
private:
    MatcherPrivate *p;

    void buildIndexes(const Corpus &c);
    void addToIndex(const Word &word, const WordID wordID, const WordID indexID);
    void relevancyMatch(const WordList &query, const SearchParameters &params, const int extraError, MatchResults &matchedDocuments);

public:
    Matcher();
    ~Matcher();
    Matcher& operator=(const Matcher &m) = delete;

    // The simple API
    MatchResults match(const char *queryAsUtf8);
    MatchResults match(const WordList &query);
    MatchResults match(const std::string &queryAsUtf8);

    // When you want to specify search parameters exactly.
    MatchResults match(const char *queryAsUtf8, const SearchParameters &params);
    MatchResults match(const WordList &query, const SearchParameters &params);
    void index(const Corpus &c);
    ErrorValues& getErrorValues();
    IndexWeights& getIndexWeights();
    /*
     * This function is optimized for online matches, that is, queries
     * that are live updated during typing. It uses slightly different
     * search heuristics to ensure results that "feel good" to humans.
     *
     * The second argument is the field that should be the primary focus.
     * Usually it means having the text that will be shown to the user.
     * As an example, in the HUD, this field would contain the command
     * (and nothing else) that will be executed.
     */
    MatchResults onlineMatch(const WordList &query, const Word &primaryIndex);
};

COL_NAMESPACE_END

#endif /* MATCHER_HH_ */