]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/test/tools/detail/fwd.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / test / tools / detail / fwd.hpp
1 // (C) Copyright Gennadiy Rozental 2001.
2 // Distributed under the Boost Software License, Version 1.0.
3 // (See accompanying file LICENSE_1_0.txt or copy at
4 // http://www.boost.org/LICENSE_1_0.txt)
5
6 // See http://www.boost.org/libs/test for the library home page.
7 //
8 // File : $RCSfile$
9 //
10 // Version : $Revision: 74248 $
11 //
12 // Description : toolbox implementation types and forward declarations
13 // ***************************************************************************
14
15 #ifndef BOOST_TEST_TOOLS_DETAIL_FWD_HPP_012705GER
16 #define BOOST_TEST_TOOLS_DETAIL_FWD_HPP_012705GER
17
18 // Boost.Test
19 #include <boost/test/detail/config.hpp>
20 #include <boost/test/utils/basic_cstring/io.hpp>
21
22 // STL
23 #include <cstddef> // for std::size_t
24
25 #include <boost/test/detail/suppress_warnings.hpp>
26
27 //____________________________________________________________________________//
28
29 namespace boost {
30 namespace unit_test {
31
32 class lazy_ostream;
33
34 } // namespace unit_test
35
36 namespace test_tools {
37
38 using unit_test::const_string;
39 class assertion_result;
40
41 //____________________________________________________________________________//
42
43 namespace tt_detail {
44
45 inline bool dummy_cond() { return false; }
46
47 // ************************************************************************** //
48 // ************** types of supported assertions ************** //
49 // ************************************************************************** //
50
51 //____________________________________________________________________________//
52
53 enum check_type {
54 CHECK_PRED,
55 CHECK_MSG,
56 CHECK_EQUAL,
57 CHECK_NE,
58 CHECK_LT,
59 CHECK_LE,
60 CHECK_GT,
61 CHECK_GE,
62 CHECK_CLOSE,
63 CHECK_CLOSE_FRACTION,
64 CHECK_SMALL,
65 CHECK_BITWISE_EQUAL,
66 CHECK_PRED_WITH_ARGS,
67 CHECK_EQUAL_COLL,
68 CHECK_BUILT_ASSERTION
69 };
70
71 //____________________________________________________________________________//
72
73 // ************************************************************************** //
74 // ************** levels of supported assertions ************** //
75 // ************************************************************************** //
76
77 enum tool_level {
78 WARN, CHECK, REQUIRE, PASS
79 };
80
81 //____________________________________________________________________________//
82
83 // ************************************************************************** //
84 // ************** Tools offline implementation ************** //
85 // ************************************************************************** //
86
87 BOOST_TEST_DECL bool
88 report_assertion( assertion_result const& pr, unit_test::lazy_ostream const& assertion_descr,
89 const_string file_name, std::size_t line_num,
90 tool_level tl, check_type ct,
91 std::size_t num_args, ... );
92
93 //____________________________________________________________________________//
94
95 BOOST_TEST_DECL assertion_result
96 format_assertion_result( const_string expr_val, const_string details );
97
98 //____________________________________________________________________________//
99
100 BOOST_TEST_DECL assertion_result
101 format_fpc_report( const_string expr_val, const_string details );
102
103 //____________________________________________________________________________//
104
105 BOOST_TEST_DECL bool
106 is_defined_impl( const_string symbol_name, const_string symbol_value );
107
108 //____________________________________________________________________________//
109
110 BOOST_TEST_DECL assertion_result
111 equal_impl( char const* left, char const* right );
112
113 //____________________________________________________________________________//
114
115 } // namespace tt_detail
116 } // namespace test_tools
117 } // namespace boost
118
119 #include <boost/test/detail/enable_warnings.hpp>
120
121 #endif // BOOST_TEST_TOOLS_DETAIL_FWD_HPP_012705GER