/usr/include/svnqt/revision.h is in libsvnqt-dev 1.5.5-3ubuntu1.
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 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 | /*
* Port for usage with qt-framework and development for kdesvn
* Copyright (C) 2005-2009 by Rajko Albrecht (ral@alwins-world.de)
* http://kdesvn.alwins-world.de
*/
/*
* ====================================================================
* Copyright (c) 2002-2005 The RapidSvn Group. All rights reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library (in the file LGPL.txt); if not,
* write to the Free Software Foundation, Inc., 51 Franklin St,
* Fifth Floor, Boston, MA 02110-1301 USA
*
* This software consists of voluntary contributions made by many
* individuals. For exact contribution history, see the revision
* history and logs, available at http://rapidsvn.tigris.org/.
* ====================================================================
*/
#ifndef SVNQT_REVISION_H
#define SVNQT_REVISION_H
// svncpp
#include <svnqt/datetime.h>
#include <svnqt/svnqt_defines.h>
#include <QString>
#include <QDateTime>
#include <QTextStream>
// subversion api
#include "svn_types.h"
#include "svn_opt.h"
namespace svn
{
/**
* Class that encapsulates svn_opt_revnum_t.
*
* @see svn_opt_revnum_t
*/
class SVNQT_EXPORT Revision
{
private:
svn_opt_revision_t m_revision;
void
init (const svn_opt_revision_t * revision);
void
assign(const QString&);
void
assign(const QDateTime&);
public:
/*!
* \defgroup Predefinedrevisions Predefined revision
*
* defines some well-known revision and revision-types for easier use.
*/
/*@{*/
//! Describes the start revision
static const svn_opt_revision_kind START;
//! Describes the base revision (eg, last update of working copy)
static const svn_opt_revision_kind BASE;
//! Describes HEAD revision of repository, eg. latest commit into repository
static const svn_opt_revision_kind HEAD;
//! Describes current working state of working copy
static const svn_opt_revision_kind WORKING;
//! Describes not know revision
static const svn_opt_revision_kind UNDEFINED;
//! Defines the revision before current head.
static const svn_opt_revision_kind PREV;
//! the revision contains a date.
/*!
* When Revision is of this type the date() methode returns a valid value.
* \sa date()
*/
static const svn_opt_revision_kind DATE;
//! Revision contains a revision number
/*!
* When revision is of this type revnum() returns a valid value.
* @sa revnum()
*/
static const svn_opt_revision_kind NUMBER;
/*@}*/
/**
* Constructor
*
* @param revision revision information
*/
Revision (const svn_opt_revision_t * revision);
/**
* Constructor
*
* @param revnum revision number
*/
Revision (const svn_revnum_t revnum);
/**
* Constructor
* @param revnum a revision number
* @param revstring a revision string
*
* The revision string MUST uppercase, it may some of "HEAD", "BASE", "WORKING", "COMMITED", "PREV",
* or a date in form {YYYY-MM-DD}.
*/
Revision (const int revnum, const QString&revstring);
/**
* Constructor
* @param revstring a revision string
*
* The revision string MUST uppercase, it may some of "HEAD", "BASE", "WORKING", "COMMITED", "PREV",
* or a date in form {YYYY-MM-DD}.
*/
Revision (const QString&revstring);
/**
* Constructor
*
* @param kind
*/
Revision (const svn_opt_revision_kind kind = svn_opt_revision_unspecified);
/**
* Constructor
*
* @param dateTime DateTime wrapper for apr_time_t
* @todo change it to referenced parameter (requires interface upgrade of lib)
*/
Revision (const DateTime dateTime);
/**
* Constructor
*
* @param dateTime QDateTime type
*/
Revision (const QDateTime&dateTime);
/**
* Copy constructor
*
* @param revision Source
*/
Revision (const Revision & revision);
/**
* @return revision information
*/
const svn_opt_revision_t *
revision () const;
/**
* @see revision (). Same function
* but with operator overloading
*/
operator svn_opt_revision_t * ()
{
return &m_revision;
}
/**
* @see revision (). Same function
* but with operator overloading
*/
operator const svn_opt_revision_t*()const
{
return &m_revision;
}
/**
* @return revision numver
*/
svn_revnum_t
revnum () const;
/**
* @return revision kind
*/
svn_opt_revision_kind
kind () const;
operator QString ()const;
QString toString()const;
bool isRemote()const;
/**
* @return valid date if kind is Revision::DATE
*/
apr_time_t
date () const;
bool operator==(const Revision&)const;
bool operator!=(const svn_opt_revision_kind)const;
bool operator==(const svn_opt_revision_kind)const;
bool operator==(int)const;
bool operator!()const;
bool operator!();
operator bool()const;
operator bool();
/**
* assignment operator
* @param what a simple revision string (not s:e but s)
* @return object itself
*/
Revision& operator=(const QString&what);
};
}
inline QTextStream& operator<<(QTextStream&s,svn::Revision&r)
{
s << r.toString();
return s;
}
#endif
/* -----------------------------------------------------------------
* local variables:
* eval: (load-file "../../rapidsvn-dev.el")
* end:
*/
|