| 9014 | namespace Catch { |
| 9015 | |
| 9016 | class Session : NonCopyable { |
| 9017 | public: |
| 9018 | |
| 9019 | Session(); |
| 9020 | ~Session() override; |
| 9021 | |
| 9022 | void showHelp() const; |
| 9023 | void libIdentify(); |
| 9024 | |
| 9025 | int applyCommandLine( int argc, char const * const * argv ); |
| 9026 | |
| 9027 | void useConfigData( ConfigData const& configData ); |
| 9028 | |
| 9029 | int run( int argc, char* argv[] ); |
| 9030 | #if defined(CATCH_CONFIG_WCHAR) && defined(WIN32) && defined(UNICODE) |
| 9031 | int run( int argc, wchar_t* const argv[] ); |
| 9032 | #endif |
| 9033 | int run(); |
| 9034 | |
| 9035 | clara::Parser const& cli() const; |
| 9036 | void cli( clara::Parser const& newParser ); |
| 9037 | ConfigData& configData(); |
| 9038 | Config& config(); |
| 9039 | private: |
| 9040 | int runInternal(); |
| 9041 | |
| 9042 | clara::Parser m_cli; |
| 9043 | ConfigData m_configData; |
| 9044 | std::shared_ptr<Config> m_config; |
| 9045 | bool m_startupExceptions = false; |
| 9046 | }; |
| 9047 | |
| 9048 | } // end namespace Catch |
| 9049 | |