1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- #ifndef TWOBLUECUBES_CATCH_COMMON_H_INCLUDED
- #define TWOBLUECUBES_CATCH_COMMON_H_INCLUDED
- #include "catch_compiler_capabilities.h"
- #define INTERNAL_CATCH_UNIQUE_NAME_LINE2( name, line ) name##line
- #define INTERNAL_CATCH_UNIQUE_NAME_LINE( name, line ) INTERNAL_CATCH_UNIQUE_NAME_LINE2( name, line )
- #ifdef CATCH_CONFIG_COUNTER
- # define INTERNAL_CATCH_UNIQUE_NAME( name ) INTERNAL_CATCH_UNIQUE_NAME_LINE( name, __COUNTER__ )
- #else
- # define INTERNAL_CATCH_UNIQUE_NAME( name ) INTERNAL_CATCH_UNIQUE_NAME_LINE( name, __LINE__ )
- #endif
- #include <iosfwd>
- #include <string>
- #include <cstdint>
- struct Catch_global_namespace_dummy {};
- std::ostream& operator<<(std::ostream&, Catch_global_namespace_dummy);
- namespace Catch {
- struct CaseSensitive { enum Choice {
- Yes,
- No
- }; };
- class NonCopyable {
- NonCopyable( NonCopyable const& ) = delete;
- NonCopyable( NonCopyable && ) = delete;
- NonCopyable& operator = ( NonCopyable const& ) = delete;
- NonCopyable& operator = ( NonCopyable && ) = delete;
- protected:
- NonCopyable();
- virtual ~NonCopyable();
- };
- struct SourceLineInfo {
- SourceLineInfo() = delete;
- SourceLineInfo( char const* _file, std::size_t _line ) noexcept
- : file( _file ),
- line( _line )
- {}
- SourceLineInfo( SourceLineInfo const& other ) = default;
- SourceLineInfo& operator = ( SourceLineInfo const& ) = default;
- SourceLineInfo( SourceLineInfo&& ) noexcept = default;
- SourceLineInfo& operator = ( SourceLineInfo&& ) noexcept = default;
- bool empty() const noexcept { return file[0] == '\0'; }
- bool operator == ( SourceLineInfo const& other ) const noexcept;
- bool operator < ( SourceLineInfo const& other ) const noexcept;
- char const* file;
- std::size_t line;
- };
- std::ostream& operator << ( std::ostream& os, SourceLineInfo const& info );
-
-
-
- using ::operator<<;
-
-
-
-
- struct StreamEndStop {
- std::string operator+() const;
- };
- template<typename T>
- T const& operator + ( T const& value, StreamEndStop ) {
- return value;
- }
- }
- #define CATCH_INTERNAL_LINEINFO \
- ::Catch::SourceLineInfo( __FILE__, static_cast<std::size_t>( __LINE__ ) )
- #endif
|