This file is indexed.

/usr/include/srchilite/highlighttoken.h is in libsource-highlight-dev 3.1.6-2ubuntu1.

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
79
80
81
82
83
84
85
86
87
88
89
90
91
//
// Author: Lorenzo Bettini <http://www.lorenzobettini.it>, (C) 2004-2008
//
// Copyright: See COPYING file that comes with this distribution
//

#ifndef HIGHLIGHTTOKEN_H_
#define HIGHLIGHTTOKEN_H_

#include <string>
#include <list>
#include <vector>
#include <algorithm>

namespace srchilite {

class HighlightRule;

/**
 * The matched element information by a rule. Each element of the collection is:
 * first = the element name, second = the actual program string
 */
typedef std::list<std::pair<std::string, std::string> > MatchedElements;

/**
 * The matched subexpressions (if the original rule had subexpressions)
 */
typedef std::vector<std::string> MatchedSubExps;

/**
 * Token containing information for performing the highlight
 */
struct HighlightToken {
    /// the possible prefix (part before the matched string)
    std::string prefix;

    /// true if the prefix is empty or contains only spaces
    bool prefixOnlySpaces;

    /// the possible suffix (part after the matched string)
    std::string suffix;

    /// the matched elements information
    MatchedElements matched;

    /** the size of the whole matched sequence (this is computed automatically
     when matched elements are set or added) */
    unsigned int matchedSize;

    /**
     * The matched subexpressions (in case the rule had subexpressions)
     */
    MatchedSubExps matchedSubExps;

    /// the matching rule
    const HighlightRule *rule;

    HighlightToken(const HighlightRule *_rule = 0);
    HighlightToken(const std::string &elem, const std::string &matched,
            const std::string &_prefix, const HighlightRule *_rule = 0);
    ~HighlightToken();

    /**
     * Copy from the passed toke
     * @param token
     */
    void copyFrom(const HighlightToken &token) {
        prefix = token.prefix;
        suffix = token.suffix;
        matched = token.matched;
        matchedSize = token.matchedSize;
        matchedSubExps = token.matchedSubExps;
        rule = token.rule;
    }

    /**
     * Resets the matched related fields (i.e., matched, matchedSize)
     */
    void clearMatched();

    /**
     * Adds information about a matched element
     * @param elem the element name
     * @param s the matched string
     */
    void addMatched(const std::string &elem, const std::string &s);
};

}

#endif /*HIGHLIGHTTOKEN_H_*/