1 /*
2  *  Created by Phil on 5/11/2010.
3  *  Copyright 2010 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_LIST_H_INCLUDED
9 #define TWOBLUECUBES_CATCH_LIST_H_INCLUDED
10 
11 #include "catch_option.hpp"
12 #include "catch_config.hpp"
13 
14 #include <set>
15 
16 namespace Catch {
17 
18     std::size_t listTests( Config const& config );
19 
20     std::size_t listTestsNamesOnly( Config const& config );
21 
22     struct TagInfo {
23         void add( std::string const& spelling );
24         std::string all() const;
25 
26         std::set<std::string> spellings;
27         std::size_t count = 0;
28     };
29 
30     std::size_t listTags( Config const& config );
31 
32     std::size_t listReporters();
33 
34     Option<std::size_t> list( std::shared_ptr<Config> const& config );
35 
36 } // end namespace Catch
37 
38 #endif // TWOBLUECUBES_CATCH_LIST_H_INCLUDED
39