1 /* 2 * Created by Phil on 5/8/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_NOTIMPLEMENTED_EXCEPTION_H_INCLUDED 9 #define TWOBLUECUBES_CATCH_NOTIMPLEMENTED_EXCEPTION_H_INCLUDED 10 11 #include "catch_common.h" 12 13 namespace Catch { 14 15 class NotImplementedException : public std::exception 16 { 17 public: 18 NotImplementedException( SourceLineInfo const& lineInfo ); 19 ~NotImplementedException()20 virtual ~NotImplementedException() CATCH_NOEXCEPT {} 21 22 virtual const char* what() const CATCH_NOEXCEPT; 23 24 private: 25 std::string m_what; 26 SourceLineInfo m_lineInfo; 27 }; 28 29 } // end namespace Catch 30 31 /////////////////////////////////////////////////////////////////////////////// 32 #define CATCH_NOT_IMPLEMENTED throw Catch::NotImplementedException( CATCH_INTERNAL_LINEINFO ) 33 34 #endif // TWOBLUECUBES_CATCH_NOTIMPLEMENTED_EXCEPTION_H_INCLUDED 35