1 /*
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 
11 namespace Catch {
12 
13     // Versioning information
14     struct Version {
15         Version(    unsigned int _majorVersion,
16                     unsigned int _minorVersion,
17                     unsigned int _patchNumber,
18                     char const * const _branchName,
19                     unsigned int _buildNumber );
20 
21         unsigned int const majorVersion;
22         unsigned int const minorVersion;
23         unsigned int const patchNumber;
24 
25         // buildNumber is only used if branchName is not null
26         char const * const branchName;
27         unsigned int const buildNumber;
28 
29         friend std::ostream& operator << ( std::ostream& os, Version const& version );
30 
31     private:
32         void operator=( Version const& );
33     };
34 
35     inline Version libraryVersion();
36 }
37 
38 #endif // TWOBLUECUBES_CATCH_VERSION_H_INCLUDED
39