/usr/include/libqapt/dependencyinfo.h is in libqapt-dev 1.3.1-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 | /***************************************************************************
* Copyright © 2011 Jonathan Thomas <echidnaman@kubuntu.org> *
* *
* 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) version 3 or any later version *
* accepted by the membership of KDE e.V. (or its successor approved *
* by the membership of KDE e.V.), which shall act as a proxy *
* defined in Section 14 of version 3 of the license. *
* *
* 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, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef QAPT_DEPENDENCYINFO_H
#define QAPT_DEPENDENCYINFO_H
#include <QtCore/QString>
#include "globals.h"
namespace QApt {
/**
* The DependencyInfo object describes a single dependency that a package can
* have. DependencyInfo objects that are part of a group of "or" dependencies
* will return @c true for the isOrDependency() function
*
* This class has a rather low-level dependency. You will most likely not need
* to use this function, unless you are installing packages via .deb files
* directly with dpkg circumventing APT, and wish to check that all
* dependencies are satisfied before blindly installing the package with dpkg.
*
* @since 1.2
*
* @author Jonathan Thomas
*/
class Q_DECL_EXPORT DependencyInfo
{
public:
/**
* Default constructor.
*
* All unspecified fields are either empty or 0
*/
DependencyInfo();
/**
* Default destructor.
*/
~DependencyInfo();
static QList<QList<DependencyInfo > > parseDepends(const QString &field, DependencyType type);
/**
* The name of the package that the dependency describes.
*
* @return The package name of the dependency
*/
QString packageName() const;
/**
* The version of the package that the dependency describes.
*
* @return The package version of the dependency
*/
QString packageVersion() const;
/**
* The logical relation in regards to the version that the dependency
* describes
*
* @return The logical relation of the dependency
*/
RelationType relationType() const;
/**
* The dependency type that the dependency describes, such as a
* "Depend", "Recommends", "Suggests", etc.
*
* @return The @c DependencyType of the dependency
*/
DependencyType dependencyType() const;
/**
* Whether or not the dependency is part of an "or" dependency group
*/
bool isOrDependency() const;
private:
DependencyInfo(const QString &package, const QString &version,
RelationType rType, DependencyType dType);
QString m_packageName;
QString m_packageVersion;
RelationType m_relationType;
DependencyType m_dependencyType;
};
/**
* A DependencyItem is a list of DependencyInfo objects that are all
* interchangable "or" dependencies of a package. Any one of the package
* name/version combinations specified by the DependencyInfo objects in this
* list will satisfy the dependency
*/
typedef QList<DependencyInfo> DependencyItem;
}
#endif
|