blob: 09032d68a726db76afbae1ba60909876f7c8d858 [file] [log] [blame]
Phil Nash7673a302012-11-15 22:15:41 +00001/*
2 * Created by Phil on 13/11/2012.
3 * Copyright 2012 Two Blue Cubes Ltd. All rights reserved.
4 *
5 * Distributed under the Boost Software License, Version 1.0. (See accompanying
6 * file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 */
8#ifndef TWOBLUECUBES_CATCH_VERSION_H_INCLUDED
9#define TWOBLUECUBES_CATCH_VERSION_H_INCLUDED
10
11namespace Catch {
12
13 // Versioning information
14 struct Version {
Phil Nashb56aaf42012-12-01 23:42:47 +000015 Version( unsigned int _majorVersion,
16 unsigned int _minorVersion,
Phil Nash21f7ef62015-06-29 18:05:23 +010017 unsigned int _patchNumber,
18 std::string const& _branchName,
19 unsigned int _buildNumber );
Phil Nashb56aaf42012-12-01 23:42:47 +000020
Phil Nash7303b2b2014-04-18 08:28:52 +010021 unsigned int const majorVersion;
22 unsigned int const minorVersion;
Phil Nash21f7ef62015-06-29 18:05:23 +010023 unsigned int const patchNumber;
Phil Nash2e3c5fa2013-03-25 08:46:48 +000024
Phil Nash21f7ef62015-06-29 18:05:23 +010025 // buildNumber is only used if branchName is not null
26 std::string const branchName;
27 unsigned int const buildNumber;
28
29 friend std::ostream& operator << ( std::ostream& os, Version const& version );
Phil Nashe9173812015-11-04 18:01:28 +000030
Phil Nash503d5d02013-07-03 08:25:11 +010031 private:
32 void operator=( Version const& );
Phil Nash7673a302012-11-15 22:15:41 +000033 };
34
Kevin Usheye04dc512017-03-16 11:17:45 -070035 inline Version libraryVersion();
Phil Nash7673a302012-11-15 22:15:41 +000036}
37
38#endif // TWOBLUECUBES_CATCH_VERSION_H_INCLUDED