| 79 | } |
| 80 | |
| 81 | int main() |
| 82 | { |
| 83 | BOOST_TEST_EQ(counter, 0); |
| 84 | leaf::try_handle_all( |
| 85 | []() -> leaf::result<void> |
| 86 | { |
| 87 | return f3(); |
| 88 | }, |
| 89 | []( info<1> const &, leaf::diagnostic_details const & di ) |
| 90 | { |
| 91 | #if BOOST_LEAF_CFG_STD_STRING |
| 92 | std::ostringstream st; |
| 93 | st << di; |
| 94 | std::string s = st.str(); |
| 95 | std::cout << s << std::endl; |
| 96 | if( BOOST_LEAF_CFG_CAPTURE ) |
| 97 | { |
| 98 | if( BOOST_LEAF_CFG_DIAGNOSTICS ) |
| 99 | { |
| 100 | auto const n1 = s.find("info<1>: acc=0"); |
| 101 | auto const n2 = s.find("info<2>: acc=0"); |
| 102 | auto const n3 = s.find("info<3>: acc=0"); |
| 103 | auto const n4 = s.find("info<4>: acc=2"); |
| 104 | BOOST_TEST_NE(n1, s.npos); |
| 105 | BOOST_TEST_NE(n2, s.npos); |
| 106 | BOOST_TEST_NE(n3, s.npos); |
| 107 | BOOST_TEST_NE(n4, s.npos); |
| 108 | } |
| 109 | BOOST_TEST_EQ(counter, 4); |
| 110 | } |
| 111 | else |
| 112 | BOOST_TEST_EQ(counter, 1); |
| 113 | #endif |
| 114 | }, |
| 115 | [] |
| 116 | { |
| 117 | std::abort(); |
| 118 | } ); |
| 119 | BOOST_TEST_EQ(counter, 0); |
| 120 | |
| 121 | leaf::try_handle_all( |
| 122 | []() -> leaf::result<void> |
| 123 | { |
| 124 | return f2(); |
| 125 | }, |
| 126 | [] |
| 127 | { |
| 128 | BOOST_TEST_EQ(counter, 0); |
| 129 | } ); |
| 130 | |
| 131 | BOOST_TEST_EQ(counter, 0); |
| 132 | { |
| 133 | int r = leaf::try_handle_all( |
| 134 | []() -> leaf::result<int> |
| 135 | { |
| 136 | return leaf::try_handle_some( |
| 137 | []() -> leaf::result<int> |
| 138 | { |
nothing calls this directly
no test coverage detected