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_IMPL_HPP_INCLUDED 9 #define TWOBLUECUBES_CATCH_IMPL_HPP_INCLUDED 10 11 // Collect all the implementation files together here 12 // These are the equivalent of what would usually be cpp files 13 14 #ifdef __clang__ 15 #pragma clang diagnostic push 16 #pragma clang diagnostic ignored "-Wweak-vtables" 17 #endif 18 19 #include "../catch_session.hpp" 20 #include "catch_registry_hub.hpp" 21 #include "catch_notimplemented_exception.hpp" 22 #include "catch_context_impl.hpp" 23 #include "catch_console_colour_impl.hpp" 24 #include "catch_generators_impl.hpp" 25 #include "catch_assertionresult.hpp" 26 #include "catch_test_case_info.hpp" 27 #include "catch_test_spec.hpp" 28 #include "catch_version.hpp" 29 #include "catch_message.hpp" 30 #include "catch_legacy_reporter_adapter.hpp" 31 #include "catch_timer.hpp" 32 #include "catch_common.hpp" 33 #include "catch_section.hpp" 34 #include "catch_debugger.hpp" 35 #include "catch_tostring.hpp" 36 #include "catch_result_builder.hpp" 37 #include "catch_tag_alias_registry.hpp" 38 #include "catch_test_case_tracker.hpp" 39 40 #include "../reporters/catch_reporter_multi.hpp" 41 #include "../reporters/catch_reporter_xml.hpp" 42 #include "../reporters/catch_reporter_junit.hpp" 43 #include "../reporters/catch_reporter_console.hpp" 44 #include "../reporters/catch_reporter_compact.hpp" 45 46 namespace Catch { 47 // These are all here to avoid warnings about not having any out of line 48 // virtual methods ~NonCopyable()49 NonCopyable::~NonCopyable() {} ~IShared()50 IShared::~IShared() {} ~IStream()51 IStream::~IStream() CATCH_NOEXCEPT {} ~FileStream()52 FileStream::~FileStream() CATCH_NOEXCEPT {} ~CoutStream()53 CoutStream::~CoutStream() CATCH_NOEXCEPT {} ~DebugOutStream()54 DebugOutStream::~DebugOutStream() CATCH_NOEXCEPT {} ~StreamBufBase()55 StreamBufBase::~StreamBufBase() CATCH_NOEXCEPT {} ~IContext()56 IContext::~IContext() {} ~IResultCapture()57 IResultCapture::~IResultCapture() {} ~ITestCase()58 ITestCase::~ITestCase() {} ~ITestCaseRegistry()59 ITestCaseRegistry::~ITestCaseRegistry() {} ~IRegistryHub()60 IRegistryHub::~IRegistryHub() {} ~IMutableRegistryHub()61 IMutableRegistryHub::~IMutableRegistryHub() {} ~IExceptionTranslator()62 IExceptionTranslator::~IExceptionTranslator() {} ~IExceptionTranslatorRegistry()63 IExceptionTranslatorRegistry::~IExceptionTranslatorRegistry() {} ~IReporter()64 IReporter::~IReporter() {} ~IReporterFactory()65 IReporterFactory::~IReporterFactory() {} ~IReporterRegistry()66 IReporterRegistry::~IReporterRegistry() {} ~IStreamingReporter()67 IStreamingReporter::~IStreamingReporter() {} ~AssertionStats()68 AssertionStats::~AssertionStats() {} ~SectionStats()69 SectionStats::~SectionStats() {} ~TestCaseStats()70 TestCaseStats::~TestCaseStats() {} ~TestGroupStats()71 TestGroupStats::~TestGroupStats() {} ~TestRunStats()72 TestRunStats::~TestRunStats() {} ~SectionNode()73 CumulativeReporterBase::SectionNode::~SectionNode() {} ~CumulativeReporterBase()74 CumulativeReporterBase::~CumulativeReporterBase() {} 75 ~StreamingReporterBase()76 StreamingReporterBase::~StreamingReporterBase() {} ~ConsoleReporter()77 ConsoleReporter::~ConsoleReporter() {} ~CompactReporter()78 CompactReporter::~CompactReporter() {} ~IRunner()79 IRunner::~IRunner() {} ~IMutableContext()80 IMutableContext::~IMutableContext() {} ~IConfig()81 IConfig::~IConfig() {} ~XmlReporter()82 XmlReporter::~XmlReporter() {} ~JunitReporter()83 JunitReporter::~JunitReporter() {} ~TestRegistry()84 TestRegistry::~TestRegistry() {} ~FreeFunctionTestCase()85 FreeFunctionTestCase::~FreeFunctionTestCase() {} ~IGeneratorInfo()86 IGeneratorInfo::~IGeneratorInfo() {} ~IGeneratorsForTest()87 IGeneratorsForTest::~IGeneratorsForTest() {} ~WildcardPattern()88 WildcardPattern::~WildcardPattern() {} ~Pattern()89 TestSpec::Pattern::~Pattern() {} ~NamePattern()90 TestSpec::NamePattern::~NamePattern() {} ~TagPattern()91 TestSpec::TagPattern::~TagPattern() {} ~ExcludedPattern()92 TestSpec::ExcludedPattern::~ExcludedPattern() {} 93 ~Equals()94 Matchers::Impl::StdString::Equals::~Equals() {} ~Contains()95 Matchers::Impl::StdString::Contains::~Contains() {} ~StartsWith()96 Matchers::Impl::StdString::StartsWith::~StartsWith() {} ~EndsWith()97 Matchers::Impl::StdString::EndsWith::~EndsWith() {} 98 dummy()99 void Config::dummy() {} 100 101 namespace TestCaseTracking { ~ITracker()102 ITracker::~ITracker() {} ~TrackerBase()103 TrackerBase::~TrackerBase() {} ~SectionTracker()104 SectionTracker::~SectionTracker() {} ~IndexTracker()105 IndexTracker::~IndexTracker() {} 106 } 107 } 108 109 #ifdef __clang__ 110 #pragma clang diagnostic pop 111 #endif 112 113 #endif // TWOBLUECUBES_CATCH_IMPL_HPP_INCLUDED 114