This file is indexed.

/usr/include/kdevplatform/vcs/vcsstatusinfo.h is in kdevelop-dev 4:5.2.1-1ubuntu4.

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
/* This file is part of KDevelop
 *
 * Copyright 2007 Andreas Pakulat <apaku@gmx.de>
 * Copyright 2007 Matthew Woehlke <mw_triad@users.sourceforge.net>
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program 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 General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 * 02110-1301, USA.
 */

#ifndef KDEVPLATFORM_VCSSTATUSINFO_H
#define KDEVPLATFORM_VCSSTATUSINFO_H

#include "vcsexport.h"
#include <QMetaType>
#include <QScopedPointer>

class QUrl;

namespace KDevelop
{

/**
 *
 * Class that encapsulates status information
 * for one local url.
 *
 * The extendedState functions allow to transport
 * extended status information
 *
 * Note for VCS implementations:
 * If you want to use this class in queued signal/slot connections
 * you should call qRegisterMetaType<KDevelop::VcsStatusInfo>()
 * in the constructor of the plugin class
 */
class KDEVPLATFORMVCS_EXPORT VcsStatusInfo
{
public:
    /**
     * Status of a local file
     */
    enum State
    {
        ItemUnknown       = 0    /**< No VCS information about a file is known (or file is not under VCS control). */,
        ItemUpToDate      = 1    /**< Item was updated or it is already at up to date version. */,
        ItemAdded         = 2    /**< Item was added to the repository but not committed. */,
        ItemModified      = 3    /**< Item was modified locally. */,
        ItemDeleted       = 4    /**< Item is scheduled to be deleted. */,
        ItemHasConflicts  = 8    /**< Local version has conflicts that need to be resolved before commit. */,
        ItemUserState     = 1000 /**< special states for individual vcs implementations should use this as base. */
    };

    VcsStatusInfo();
    virtual ~VcsStatusInfo();
    VcsStatusInfo(const VcsStatusInfo&);

    /**
     * retrieves the url of this status information item
     * @return the url
     */
    QUrl url() const;
    /**
     * Change the url of this status information item
     * @param url the url
     */
    void setUrl( const QUrl& url );

    VcsStatusInfo::State state() const;
    void setState( VcsStatusInfo::State );

    int extendedState() const;
    void setExtendedState( int );

    VcsStatusInfo& operator=( const VcsStatusInfo& rhs);
    bool operator==( const KDevelop::VcsStatusInfo& rhs) const;
    bool operator!=( const KDevelop::VcsStatusInfo& rhs) const;

private:
    const QScopedPointer<class VcsStatusInfoPrivate> d;
};

}

Q_DECLARE_METATYPE( KDevelop::VcsStatusInfo )

KDEVPLATFORMVCS_EXPORT QDebug operator<<(QDebug s, const KDevelop::VcsStatusInfo& statusInfo);

#endif