mirror of https://github.com/procxx/kepka.git
				
				
				
			
		
			
				
	
	
		
			69 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C++
		
	
	
	
| /*
 | |
|  *  Created by Phil on 25/2/2012.
 | |
|  *  Copyright 2012 Two Blue Cubes Ltd. All rights reserved.
 | |
|  *
 | |
|  *  Distributed under the Boost Software License, Version 1.0. (See accompanying
 | |
|  *  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 | |
|  */
 | |
| #ifndef TWOBLUECUBES_CATCH_CONSOLE_COLOUR_HPP_INCLUDED
 | |
| #define TWOBLUECUBES_CATCH_CONSOLE_COLOUR_HPP_INCLUDED
 | |
| 
 | |
| #include "catch_common.h"
 | |
| 
 | |
| namespace Catch {
 | |
| 
 | |
|     struct Colour {
 | |
|         enum Code {
 | |
|             None = 0,
 | |
| 
 | |
|             White,
 | |
|             Red,
 | |
|             Green,
 | |
|             Blue,
 | |
|             Cyan,
 | |
|             Yellow,
 | |
|             Grey,
 | |
| 
 | |
|             Bright = 0x10,
 | |
| 
 | |
|             BrightRed = Bright | Red,
 | |
|             BrightGreen = Bright | Green,
 | |
|             LightGrey = Bright | Grey,
 | |
|             BrightWhite = Bright | White,
 | |
| 
 | |
|             // By intention
 | |
|             FileName = LightGrey,
 | |
|             Warning = Yellow,
 | |
|             ResultError = BrightRed,
 | |
|             ResultSuccess = BrightGreen,
 | |
|             ResultExpectedFailure = Warning,
 | |
| 
 | |
|             Error = BrightRed,
 | |
|             Success = Green,
 | |
| 
 | |
|             OriginalExpression = Cyan,
 | |
|             ReconstructedExpression = Yellow,
 | |
| 
 | |
|             SecondaryText = LightGrey,
 | |
|             Headers = White
 | |
|         };
 | |
| 
 | |
|         // Use constructed object for RAII guard
 | |
|         Colour( Code _colourCode );
 | |
|         Colour( Colour&& other ) noexcept;
 | |
|         Colour& operator=( Colour&& other ) noexcept;
 | |
|         ~Colour();
 | |
| 
 | |
|         // Use static method for one-shot changes
 | |
|         static void use( Code _colourCode );
 | |
| 
 | |
|     private:
 | |
|         bool m_moved = false;
 | |
|     };
 | |
| 
 | |
|     std::ostream& operator << ( std::ostream& os, Colour const& );
 | |
| 
 | |
| } // end namespace Catch
 | |
| 
 | |
| #endif // TWOBLUECUBES_CATCH_CONSOLE_COLOUR_HPP_INCLUDED
 |