This file is indexed.

/usr/include/soprano/bindingset.h is in libsoprano-dev 2.9.4+dfsg1-0ubuntu2.

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
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
/*
 * This file is part of Soprano Project.
 *
 * Copyright (C) 2007 Sebastian Trueg <trueg@kde.org>
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Library General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * 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
 * Library General Public License for more details.
 *
 * You should have received a copy of the GNU Library General Public License
 * along with this library; see the file COPYING.LIB.  If not, write to
 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 * Boston, MA 02110-1301, USA.
 */

#ifndef _SOPRANO_QUERY_BINDINGS_H_
#define _SOPRANO_QUERY_BINDINGS_H_

#include "soprano_export.h"

#include <QtCore/QSharedDataPointer>


class QStringList;

namespace Soprano {

    class Node;

    /**
     * \class BindingSet bindingset.h Soprano/BindingSet
     *
     * \brief Represents one set of bindings in the result of a select query.
     *
     * BindingSet is mostly a convenience class for caching of query
     * results.
     *
     * \sa QueryResultIterator
     *
     * \author Sebastian Trueg <trueg@kde.org>
     */
    class SOPRANO_EXPORT BindingSet
    {
    public:
        /**
         * Create an emtpy set.
         */
        BindingSet();

        /**
         * Copy constructor.
         */
        BindingSet( const BindingSet& other );

        /**
         * Destructor.
         */
        ~BindingSet();

        BindingSet& operator=( const BindingSet& );

        /**
         * \return The names of the bound variables in this set.
         */
        QStringList bindingNames() const;

        /**
         * Get the binding for a variable by index.
         *
         * This is equivalent to value(int) const.
         */
        Node operator[]( int offset ) const;

        /**
         * Get the binding for a variable.
         *
         * This is equivalent to value(const QString&) const.
         */
        Node operator[]( const QString name ) const;

        /**
         * Get the binding for a variable by index.
         *
         * \param offset The index of the requested variable.
         *
         * \return The binding for the requested variable or and invalid
         * node if offset is out of bounds, i.e. bigger or equal to count().
         *
         * \sa QueryResultIterator::binding(int) const.
         */
        Node value( int offset ) const;

        /**
         * Get the binding for a variable.
         *
         * \param name The name of the requested variable.
         *
         * \return The binding for the requested variable or and invalid
         * node if the bindings do not contain the variable.
         *
         * \sa QueryResultIterator::binding(const QString&) const.
         */
        Node value( const QString& name ) const;

        /**
         * Check if a certain variable has a binding in this set.
         *
         * \param name The variable name.
         *
         * \return \p true if this set contains a binding for the
         * variable name, \p false otherwise.
         */
        bool contains( const QString& name ) const;

        /**
         * The number of bindings in this set.
         *
         * \return The number of bindings.
         */
        int count() const;

        /**
         * Insert a new binding into the set.
         */
        void insert( const QString& name, const Node& value );

        /**
         * Replaces a value in the binding set.
         *
         * \since 2.3
         */
        void replace( int offset, const Node& value );

        /**
         * Replaces a value in the binding set.
         *
         * \since 2.3
         */
        void replace( const QString& name, const Node& value );

        /**
         * Comparison operator.
         *
         * \since 2.5
         */
        bool operator==( const BindingSet& other ) const;

        /**
         * Comparison operator.
         *
         * \since 2.5
         */
        bool operator!=( const BindingSet& other ) const;

    private:
        class Private;
        QSharedDataPointer<Private> d;
    };
}

class QDebug;
class QTextStream;

SOPRANO_EXPORT QDebug operator<<( QDebug s, const Soprano::BindingSet& );
SOPRANO_EXPORT QTextStream& operator<<( QTextStream& s, const Soprano::BindingSet& );

#endif