value_to.hpp

98.1% Lines (778/793) 98.6% List of functions (365/370)
f(x) Functions (370)
Function Calls Lines Branches Blocks
bool boost::json::value_to<bool, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 6x 100.0% 100.0% bool boost::json::value_to<bool, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% bool boost::json::value_to<bool, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% bool boost::json::value_to<bool, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% bool boost::json::value_to<bool, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% boost::json::array boost::json::value_to<boost::json::array, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 4x 100.0% 100.0% boost::json::array boost::json::value_to<boost::json::array, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% boost::json::array boost::json::value_to<boost::json::array, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% boost::json::array boost::json::value_to<boost::json::array, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% boost::json::array boost::json::value_to<boost::json::array, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% boost::json::my_app::customer boost::json::value_to<boost::json::my_app::customer, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 0 0.0% 0.0% boost::json::object boost::json::value_to<boost::json::object, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 4x 100.0% 100.0% boost::json::object boost::json::value_to<boost::json::object, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% boost::json::object boost::json::value_to<boost::json::object, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% boost::json::object boost::json::value_to<boost::json::object, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% boost::json::object boost::json::value_to<boost::json::object, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% boost::json::string boost::json::value_to<boost::json::string, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 4x 100.0% 100.0% boost::json::string boost::json::value_to<boost::json::string, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% boost::json::string boost::json::value_to<boost::json::string, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% boost::json::string boost::json::value_to<boost::json::string, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% boost::json::string boost::json::value_to<boost::json::string, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% boost::variant2::monostate boost::json::value_to<boost::variant2::monostate, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 4x 100.0% 100.0% boost::variant2::monostate boost::json::value_to<boost::variant2::monostate, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% boost::variant2::monostate boost::json::value_to<boost::variant2::monostate, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% boost::variant2::monostate boost::json::value_to<boost::variant2::monostate, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% boost::variant2::monostate boost::json::value_to<boost::variant2::monostate, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% boost::variant2::variant<bool, unsigned long> boost::json::value_to<boost::variant2::variant<bool, unsigned long>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% boost::variant2::variant<boost::variant2::monostate, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<boost::variant2::variant<boost::variant2::monostate, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% boost::variant2::variant<boost::variant2::monostate, std::vector<int, std::allocator<int> > > boost::json::value_to<boost::variant2::variant<boost::variant2::monostate, std::vector<int, std::allocator<int> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 8x 100.0% 100.0% boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 4x 100.0% 100.0% boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 4x 100.0% 100.0% boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 4x 100.0% 100.0% boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 4x 100.0% 100.0% boost::variant2::variant<int> boost::json::value_to<boost::variant2::variant<int>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% boost::variant2::variant<std::vector<int, std::allocator<int> > > boost::json::value_to<boost::variant2::variant<std::vector<int, std::allocator<int> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% boost::variant2::variant<std::vector<int, std::allocator<int> >, std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >, std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > boost::json::value_to<boost::variant2::variant<std::vector<int, std::allocator<int> >, std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >, std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T11> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T11>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T11> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T11>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T11> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T11>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T11> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T11>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T11> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T11>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% char boost::json::value_to<char, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% decltype(nullptr) boost::json::value_to<decltype(nullptr), boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 5x 100.0% 100.0% decltype(nullptr) boost::json::value_to<decltype(nullptr), std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% decltype(nullptr) boost::json::value_to<decltype(nullptr), std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% decltype(nullptr) boost::json::value_to<decltype(nullptr), std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% decltype(nullptr) boost::json::value_to<decltype(nullptr), value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% double boost::json::value_to<double, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 5x 100.0% 100.0% double boost::json::value_to<double, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% double boost::json::value_to<double, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% double boost::json::value_to<double, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% double boost::json::value_to<double, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% float boost::json::value_to<float, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% float boost::json::value_to<float, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% float boost::json::value_to<float, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% float boost::json::value_to<float, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% float boost::json::value_to<float, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% int boost::json::value_to<int, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 5x 100.0% 100.0% int boost::json::value_to<int, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% int boost::json::value_to<int, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% int boost::json::value_to<int, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% int boost::json::value_to<int, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% long boost::json::value_to<long, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% long boost::json::value_to<long, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% long boost::json::value_to<long, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% long boost::json::value_to<long, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% long boost::json::value_to<long, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% long long boost::json::value_to<long long, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% long long boost::json::value_to<long long, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% long long boost::json::value_to<long long, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% long long boost::json::value_to<long long, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% long long boost::json::value_to<long long, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% short boost::json::value_to<short, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% short boost::json::value_to<short, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% short boost::json::value_to<short, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% short boost::json::value_to<short, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% short boost::json::value_to<short, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% signed char boost::json::value_to<signed char, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > boost::json::value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 6x 100.0% 100.0% std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > boost::json::value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > boost::json::value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > boost::json::value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > boost::json::value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% std::array<int, 4ul> boost::json::value_to<std::array<int, 4ul>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 5x 100.0% 100.0% std::array<int, 4ul> boost::json::value_to<std::array<int, 4ul>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% std::array<int, 4ul> boost::json::value_to<std::array<int, 4ul>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% std::array<int, 4ul> boost::json::value_to<std::array<int, 4ul>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% std::array<int, 4ul> boost::json::value_to<std::array<int, 4ul>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% std::array<int, 500ul> boost::json::value_to<std::array<int, 500ul>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::array<int, 500ul> boost::json::value_to<std::array<int, 500ul>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::array<int, 500ul> boost::json::value_to<std::array<int, 500ul>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% std::array<int, 500ul> boost::json::value_to<std::array<int, 500ul>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::array<int, 500ul> boost::json::value_to<std::array<int, 500ul>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% std::array<value_to_test_ns::T12, 3ul> boost::json::value_to<std::array<value_to_test_ns::T12, 3ul>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 6x 100.0% 100.0% std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > > boost::json::value_to<std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > > boost::json::value_to<std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > > boost::json::value_to<std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > > boost::json::value_to<std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > > boost::json::value_to<std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 10x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 3x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 3x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 3x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 3x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > > > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<int, std::allocator<int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<int, std::allocator<int> > > > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<int, std::allocator<int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<int, std::allocator<int> > > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% std::pair<decltype(nullptr), unsigned long> boost::json::value_to<std::pair<decltype(nullptr), unsigned long>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> boost::json::value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> boost::json::value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> boost::json::value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> boost::json::value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> boost::json::value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% std::pair<std::vector<int, std::allocator<int> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<int, bool>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::pair<int, bool> > > > > boost::json::value_to<std::pair<std::vector<int, std::allocator<int> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<int, bool>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::pair<int, bool> > > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::tuple<int, float, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<std::tuple<int, float, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::tuple<int, int, int, int> boost::json::value_to<std::tuple<int, int, int, int>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 4x 100.0% 100.0% std::tuple<int, int, int, int> boost::json::value_to<std::tuple<int, int, int, int>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% std::tuple<int, int, int, int> boost::json::value_to<std::tuple<int, int, int, int>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% std::tuple<int, int, int, int> boost::json::value_to<std::tuple<int, int, int, int>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% std::tuple<int, int, int, int> boost::json::value_to<std::tuple<int, int, int, int>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% std::tuple<int, int, int> boost::json::value_to<std::tuple<int, int, int>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::tuple<int, int, int> boost::json::value_to<std::tuple<int, int, int>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::tuple<int, int, int> boost::json::value_to<std::tuple<int, int, int>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% std::tuple<int, int, int> boost::json::value_to<std::tuple<int, int, int>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::tuple<int, int, int> boost::json::value_to<std::tuple<int, int, int>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > boost::json::value_to<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > boost::json::value_to<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > boost::json::value_to<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > boost::json::value_to<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > boost::json::value_to<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% std::vector<bool, std::allocator<bool> > boost::json::value_to<std::vector<bool, std::allocator<bool> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 4x 100.0% 100.0% std::vector<bool, std::allocator<bool> > boost::json::value_to<std::vector<bool, std::allocator<bool> >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::vector<bool, std::allocator<bool> > boost::json::value_to<std::vector<bool, std::allocator<bool> >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% std::vector<bool, std::allocator<bool> > boost::json::value_to<std::vector<bool, std::allocator<bool> >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% std::vector<bool, std::allocator<bool> > boost::json::value_to<std::vector<bool, std::allocator<bool> >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% std::vector<boost::json::my_app::customer, std::allocator<boost::json::my_app::customer> > boost::json::value_to<std::vector<boost::json::my_app::customer, std::allocator<boost::json::my_app::customer> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 0 0.0% 0.0% std::vector<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > boost::json::value_to<std::vector<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% std::vector<decltype(nullptr), std::allocator<decltype(nullptr)> > boost::json::value_to<std::vector<decltype(nullptr), std::allocator<decltype(nullptr)> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% std::vector<float, std::allocator<float> > boost::json::value_to<std::vector<float, std::allocator<float> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::vector<int, std::allocator<int> > boost::json::value_to<std::vector<int, std::allocator<int> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 9x 100.0% 100.0% std::vector<int, std::allocator<int> > boost::json::value_to<std::vector<int, std::allocator<int> >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 3x 100.0% 100.0% std::vector<int, std::allocator<int> > boost::json::value_to<std::vector<int, std::allocator<int> >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 3x 100.0% 100.0% std::vector<int, std::allocator<int> > boost::json::value_to<std::vector<int, std::allocator<int> >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 3x 100.0% 100.0% std::vector<int, std::allocator<int> > boost::json::value_to<std::vector<int, std::allocator<int> >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 3x 100.0% 100.0% std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > boost::json::value_to<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::vector<std::array<int, 4ul>, std::allocator<std::array<int, 4ul> > > boost::json::value_to<std::vector<std::array<int, 4ul>, std::allocator<std::array<int, 4ul> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% std::vector<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::allocator<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > > > boost::json::value_to<std::vector<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::allocator<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > boost::json::value_to<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > boost::json::value_to<std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > > boost::json::value_to<std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% std::vector<unsigned long, std::allocator<unsigned long> > boost::json::value_to<std::vector<unsigned long, std::allocator<unsigned long> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% unsigned char boost::json::value_to<unsigned char, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% unsigned int boost::json::value_to<unsigned int, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% unsigned int boost::json::value_to<unsigned int, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% unsigned int boost::json::value_to<unsigned int, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% unsigned int boost::json::value_to<unsigned int, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% unsigned int boost::json::value_to<unsigned int, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% unsigned long boost::json::value_to<unsigned long, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% unsigned long boost::json::value_to<unsigned long, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% unsigned long boost::json::value_to<unsigned long, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% unsigned long boost::json::value_to<unsigned long, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% unsigned long boost::json::value_to<unsigned long, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% unsigned long long boost::json::value_to<unsigned long long, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% unsigned long long boost::json::value_to<unsigned long long, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% unsigned long long boost::json::value_to<unsigned long long, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% unsigned long long boost::json::value_to<unsigned long long, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% unsigned long long boost::json::value_to<unsigned long long, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% unsigned short boost::json::value_to<unsigned short, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 3x 100.0% 100.0% unsigned short boost::json::value_to<unsigned short, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% unsigned short boost::json::value_to<unsigned short, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% unsigned short boost::json::value_to<unsigned short, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% unsigned short boost::json::value_to<unsigned short, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% user_ns2::ip_address boost::json::value_to<user_ns2::ip_address, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 1x 100.0% 100.0% user_ns::ip_address boost::json::value_to<user_ns::ip_address, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% user_ns::ip_address boost::json::value_to<user_ns::ip_address, user_ns::as_string>(boost::json::value const&, user_ns::as_string const&) :98 2x 100.0% 100.0% value_to_test_ns::T1 boost::json::value_to<value_to_test_ns::T1, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 4x 100.0% 100.0% value_to_test_ns::T1 boost::json::value_to<value_to_test_ns::T1, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% value_to_test_ns::T1 boost::json::value_to<value_to_test_ns::T1, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% value_to_test_ns::T1 boost::json::value_to<value_to_test_ns::T1, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% value_to_test_ns::T1 boost::json::value_to<value_to_test_ns::T1, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% value_to_test_ns::T2 boost::json::value_to<value_to_test_ns::T2, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 4x 100.0% 100.0% value_to_test_ns::T2 boost::json::value_to<value_to_test_ns::T2, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% value_to_test_ns::T2 boost::json::value_to<value_to_test_ns::T2, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 2x 100.0% 100.0% value_to_test_ns::T2 boost::json::value_to<value_to_test_ns::T2, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 2x 100.0% 100.0% value_to_test_ns::T2 boost::json::value_to<value_to_test_ns::T2, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% value_to_test_ns::T4 boost::json::value_to<value_to_test_ns::T4, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :98 2x 100.0% 100.0% value_to_test_ns::T4 boost::json::value_to<value_to_test_ns::T4, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% value_to_test_ns::T4 boost::json::value_to<value_to_test_ns::T4, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :98 1x 100.0% 100.0% value_to_test_ns::T4 boost::json::value_to<value_to_test_ns::T4, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :98 1x 100.0% 100.0% value_to_test_ns::T4 boost::json::value_to<value_to_test_ns::T4, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 1x 100.0% 100.0% value_to_test_ns::T9 boost::json::value_to<value_to_test_ns::T9, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :98 2x 100.0% 100.0% bool boost::json::value_to<bool>(boost::json::value const&) :112 4x 100.0% 100.0% boost::json::array boost::json::value_to<boost::json::array>(boost::json::value const&) :112 2x 100.0% 100.0% boost::json::my_app::customer boost::json::value_to<boost::json::my_app::customer>(boost::json::value const&) :112 0 0.0% 0.0% boost::json::object boost::json::value_to<boost::json::object>(boost::json::value const&) :112 2x 100.0% 100.0% boost::json::string boost::json::value_to<boost::json::string>(boost::json::value const&) :112 2x 100.0% 100.0% boost::variant2::monostate boost::json::value_to<boost::variant2::monostate>(boost::json::value const&) :112 2x 100.0% 100.0% boost::variant2::variant<bool, unsigned long> boost::json::value_to<boost::variant2::variant<bool, unsigned long> >(boost::json::value const&) :112 2x 100.0% 100.0% boost::variant2::variant<boost::variant2::monostate, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<boost::variant2::variant<boost::variant2::monostate, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >(boost::json::value const&) :112 3x 100.0% 100.0% boost::variant2::variant<boost::variant2::monostate, std::vector<int, std::allocator<int> > > boost::json::value_to<boost::variant2::variant<boost::variant2::monostate, std::vector<int, std::allocator<int> > > >(boost::json::value const&) :112 1x 100.0% 100.0% boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >(boost::json::value const&) :112 2x 100.0% 100.0% boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<boost::variant2::variant<int, value_to_test_ns::T2, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >(boost::json::value const&) :112 4x 100.0% 100.0% boost::variant2::variant<int> boost::json::value_to<boost::variant2::variant<int> >(boost::json::value const&) :112 1x 100.0% 100.0% boost::variant2::variant<std::vector<int, std::allocator<int> > > boost::json::value_to<boost::variant2::variant<std::vector<int, std::allocator<int> > > >(boost::json::value const&) :112 1x 100.0% 100.0% boost::variant2::variant<std::vector<int, std::allocator<int> >, std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >, std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > boost::json::value_to<boost::variant2::variant<std::vector<int, std::allocator<int> >, std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >, std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > >(boost::json::value const&) :112 1x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T11> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T11> >(boost::json::value const&) :112 1x 100.0% 100.0% boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1> boost::json::value_to<boost::variant2::variant<value_to_test_ns::T3, value_to_test_ns::T1> >(boost::json::value const&) :112 1x 100.0% 100.0% char boost::json::value_to<char>(boost::json::value const&) :112 1x 100.0% 100.0% decltype(nullptr) boost::json::value_to<decltype(nullptr)>(boost::json::value const&) :112 3x 100.0% 100.0% double boost::json::value_to<double>(boost::json::value const&) :112 3x 100.0% 100.0% float boost::json::value_to<float>(boost::json::value const&) :112 2x 100.0% 100.0% int boost::json::value_to<int>(boost::json::value const&) :112 3x 100.0% 100.0% long boost::json::value_to<long>(boost::json::value const&) :112 2x 100.0% 100.0% long long boost::json::value_to<long long>(boost::json::value const&) :112 2x 100.0% 100.0% short boost::json::value_to<short>(boost::json::value const&) :112 2x 100.0% 100.0% signed char boost::json::value_to<signed char>(boost::json::value const&) :112 1x 100.0% 100.0% std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > boost::json::value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(boost::json::value const&) :112 4x 100.0% 100.0% std::array<int, 4ul> boost::json::value_to<std::array<int, 4ul> >(boost::json::value const&) :112 3x 100.0% 100.0% std::array<int, 500ul> boost::json::value_to<std::array<int, 500ul> >(boost::json::value const&) :112 1x 100.0% 100.0% std::array<value_to_test_ns::T12, 3ul> boost::json::value_to<std::array<value_to_test_ns::T12, 3ul> >(boost::json::value const&) :112 6x 100.0% 100.0% std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > > boost::json::value_to<std::map<int, int, std::less<int>, std::allocator<std::pair<int const, int> > > >(boost::json::value const&) :112 1x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >(boost::json::value const&) :112 7x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > > > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > > > > >(boost::json::value const&) :112 2x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<int, std::allocator<int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<int, std::allocator<int> > > > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<int, std::allocator<int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<int, std::allocator<int> > > > > >(boost::json::value const&) :112 2x 100.0% 100.0% std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > > > boost::json::value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > > > >(boost::json::value const&) :112 3x 100.0% 100.0% std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >(boost::json::value const&) :112 1x 100.0% 100.0% std::pair<decltype(nullptr), unsigned long> boost::json::value_to<std::pair<decltype(nullptr), unsigned long> >(boost::json::value const&) :112 1x 100.0% 100.0% std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> boost::json::value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> >(boost::json::value const&) :112 1x 100.0% 100.0% std::pair<std::vector<int, std::allocator<int> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<int, bool>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::pair<int, bool> > > > > boost::json::value_to<std::pair<std::vector<int, std::allocator<int> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<int, bool>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::pair<int, bool> > > > > >(boost::json::value const&) :112 2x 100.0% 100.0% std::tuple<int, float, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > boost::json::value_to<std::tuple<int, float, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >(boost::json::value const&) :112 2x 100.0% 100.0% std::tuple<int, int, int, int> boost::json::value_to<std::tuple<int, int, int, int> >(boost::json::value const&) :112 2x 100.0% 40.0% std::tuple<int, int, int> boost::json::value_to<std::tuple<int, int, int> >(boost::json::value const&) :112 1x 100.0% 40.0% std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > boost::json::value_to<std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > >(boost::json::value const&) :112 1x 100.0% 100.0% std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > boost::json::value_to<std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >(boost::json::value const&) :112 1x 100.0% 100.0% std::vector<bool, std::allocator<bool> > boost::json::value_to<std::vector<bool, std::allocator<bool> > >(boost::json::value const&) :112 3x 100.0% 100.0% std::vector<boost::json::my_app::customer, std::allocator<boost::json::my_app::customer> > boost::json::value_to<std::vector<boost::json::my_app::customer, std::allocator<boost::json::my_app::customer> > >(boost::json::value const&) :112 0 0.0% 0.0% std::vector<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > boost::json::value_to<std::vector<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > >(boost::json::value const&) :112 1x 100.0% 100.0% std::vector<decltype(nullptr), std::allocator<decltype(nullptr)> > boost::json::value_to<std::vector<decltype(nullptr), std::allocator<decltype(nullptr)> > >(boost::json::value const&) :112 1x 100.0% 100.0% std::vector<float, std::allocator<float> > boost::json::value_to<std::vector<float, std::allocator<float> > >(boost::json::value const&) :112 2x 100.0% 100.0% std::vector<int, std::allocator<int> > boost::json::value_to<std::vector<int, std::allocator<int> > >(boost::json::value const&) :112 6x 100.0% 100.0% std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > boost::json::value_to<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >(boost::json::value const&) :112 2x 100.0% 100.0% std::vector<std::array<int, 4ul>, std::allocator<std::array<int, 4ul> > > boost::json::value_to<std::vector<std::array<int, 4ul>, std::allocator<std::array<int, 4ul> > > >(boost::json::value const&) :112 1x 100.0% 100.0% std::vector<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::allocator<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > > > boost::json::value_to<std::vector<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, std::allocator<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > > > >(boost::json::value const&) :112 1x 100.0% 100.0% std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > boost::json::value_to<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > >(boost::json::value const&) :112 2x 100.0% 100.0% std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > boost::json::value_to<std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > >(boost::json::value const&) :112 2x 100.0% 100.0% std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > > boost::json::value_to<std::vector<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, std::allocator<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > > > >(boost::json::value const&) :112 3x 100.0% 100.0% std::vector<unsigned long, std::allocator<unsigned long> > boost::json::value_to<std::vector<unsigned long, std::allocator<unsigned long> > >(boost::json::value const&) :112 1x 100.0% 100.0% unsigned char boost::json::value_to<unsigned char>(boost::json::value const&) :112 1x 100.0% 100.0% unsigned int boost::json::value_to<unsigned int>(boost::json::value const&) :112 2x 100.0% 100.0% unsigned long boost::json::value_to<unsigned long>(boost::json::value const&) :112 2x 100.0% 100.0% unsigned long long boost::json::value_to<unsigned long long>(boost::json::value const&) :112 2x 100.0% 100.0% unsigned short boost::json::value_to<unsigned short>(boost::json::value const&) :112 2x 100.0% 100.0% user_ns2::ip_address boost::json::value_to<user_ns2::ip_address>(boost::json::value const&) :112 1x 100.0% 100.0% user_ns::ip_address boost::json::value_to<user_ns::ip_address>(boost::json::value const&) :112 2x 100.0% 100.0% value_to_test_ns::T1 boost::json::value_to<value_to_test_ns::T1>(boost::json::value const&) :112 2x 100.0% 100.0% value_to_test_ns::T2 boost::json::value_to<value_to_test_ns::T2>(boost::json::value const&) :112 2x 100.0% 100.0% value_to_test_ns::T4 boost::json::value_to<value_to_test_ns::T4>(boost::json::value const&) :112 1x 100.0% 40.0% boost::json::result_for<bool, boost::json::value>::type boost::json::try_value_to<bool, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 15x 100.0% 100.0% boost::json::result_for<bool, boost::json::value>::type boost::json::try_value_to<bool, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 5x 100.0% 100.0% boost::json::result_for<bool, boost::json::value>::type boost::json::try_value_to<bool, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 5x 100.0% 100.0% boost::json::result_for<bool, boost::json::value>::type boost::json::try_value_to<bool, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 5x 100.0% 100.0% boost::json::result_for<bool, boost::json::value>::type boost::json::try_value_to<bool, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 5x 100.0% 100.0% boost::json::result_for<boost::json::my_app::customer, boost::json::value>::type boost::json::try_value_to<boost::json::my_app::customer, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 0 0.0% 0.0% boost::json::result_for<boost::variant2::monostate, boost::json::value>::type boost::json::try_value_to<boost::variant2::monostate, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 4x 100.0% 100.0% boost::json::result_for<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, boost::json::value>::type boost::json::try_value_to<boost::variant2::variant<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 8x 100.0% 100.0% boost::json::result_for<decltype(nullptr), boost::json::value>::type boost::json::try_value_to<decltype(nullptr), boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 5x 100.0% 100.0% boost::json::result_for<decltype(nullptr), boost::json::value>::type boost::json::try_value_to<decltype(nullptr), std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 1x 100.0% 100.0% boost::json::result_for<decltype(nullptr), boost::json::value>::type boost::json::try_value_to<decltype(nullptr), std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 1x 100.0% 100.0% boost::json::result_for<decltype(nullptr), boost::json::value>::type boost::json::try_value_to<decltype(nullptr), std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 1x 100.0% 100.0% boost::json::result_for<decltype(nullptr), boost::json::value>::type boost::json::try_value_to<decltype(nullptr), value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 1x 100.0% 100.0% boost::json::result_for<double, boost::json::value>::type boost::json::try_value_to<double, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 2x 100.0% 100.0% boost::json::result_for<float, boost::json::value>::type boost::json::try_value_to<float, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 5x 100.0% 100.0% boost::json::result_for<int, boost::json::value>::type boost::json::try_value_to<int, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 1175x 100.0% 100.0% boost::json::result_for<int, boost::json::value>::type boost::json::try_value_to<int, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 528x 100.0% 100.0% boost::json::result_for<int, boost::json::value>::type boost::json::try_value_to<int, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 528x 100.0% 100.0% boost::json::result_for<int, boost::json::value>::type boost::json::try_value_to<int, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 528x 100.0% 100.0% boost::json::result_for<int, boost::json::value>::type boost::json::try_value_to<int, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 528x 100.0% 100.0% boost::json::result_for<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::json::value>::type boost::json::try_value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 37x 100.0% 100.0% boost::json::result_for<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::json::value>::type boost::json::try_value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 7x 100.0% 100.0% boost::json::result_for<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::json::value>::type boost::json::try_value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 7x 100.0% 100.0% boost::json::result_for<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::json::value>::type boost::json::try_value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 7x 100.0% 100.0% boost::json::result_for<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::json::value>::type boost::json::try_value_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 7x 100.0% 100.0% boost::json::result_for<std::array<int, 4ul>, boost::json::value>::type boost::json::try_value_to<std::array<int, 4ul>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 5x 100.0% 100.0% boost::json::result_for<std::array<int, 4ul>, boost::json::value>::type boost::json::try_value_to<std::array<int, 4ul>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 1x 100.0% 100.0% boost::json::result_for<std::array<int, 4ul>, boost::json::value>::type boost::json::try_value_to<std::array<int, 4ul>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 1x 100.0% 100.0% boost::json::result_for<std::array<int, 4ul>, boost::json::value>::type boost::json::try_value_to<std::array<int, 4ul>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 1x 100.0% 100.0% boost::json::result_for<std::array<int, 4ul>, boost::json::value>::type boost::json::try_value_to<std::array<int, 4ul>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 1x 100.0% 100.0% boost::json::result_for<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > >, boost::json::value>::type boost::json::try_value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 1x 100.0% 100.0% boost::json::result_for<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, boost::json::value>::type boost::json::try_value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 6x 100.0% 100.0% boost::json::result_for<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<int, bool>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::pair<int, bool> > > >, boost::json::value>::type boost::json::try_value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<int, bool>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::pair<int, bool> > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 2x 100.0% 100.0% boost::json::result_for<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::T2, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, value_to_test_ns::T2> > >, boost::json::value>::type boost::json::try_value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::T2, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, value_to_test_ns::T2> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 6x 100.0% 100.0% boost::json::result_for<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::T2, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, value_to_test_ns::T2> > >, boost::json::value>::type boost::json::try_value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::T2, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, value_to_test_ns::T2> > >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 3x 100.0% 100.0% boost::json::result_for<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::T2, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, value_to_test_ns::T2> > >, boost::json::value>::type boost::json::try_value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::T2, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, value_to_test_ns::T2> > >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 3x 100.0% 100.0% boost::json::result_for<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::T2, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, value_to_test_ns::T2> > >, boost::json::value>::type boost::json::try_value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::T2, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, value_to_test_ns::T2> > >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 3x 100.0% 100.0% boost::json::result_for<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::T2, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, value_to_test_ns::T2> > >, boost::json::value>::type boost::json::try_value_to<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, value_to_test_ns::T2, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, value_to_test_ns::T2> > >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 3x 100.0% 100.0% boost::json::result_for<std::pair<int const, int>, boost::json::value>::type boost::json::try_value_to<std::pair<int const, int>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 6x 100.0% 100.0% boost::json::result_for<std::pair<int const, int>, boost::json::value>::type boost::json::try_value_to<std::pair<int const, int>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 3x 100.0% 100.0% boost::json::result_for<std::pair<int const, int>, boost::json::value>::type boost::json::try_value_to<std::pair<int const, int>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 3x 100.0% 100.0% boost::json::result_for<std::pair<int const, int>, boost::json::value>::type boost::json::try_value_to<std::pair<int const, int>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 3x 100.0% 100.0% boost::json::result_for<std::pair<int const, int>, boost::json::value>::type boost::json::try_value_to<std::pair<int const, int>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 3x 100.0% 100.0% boost::json::result_for<std::pair<int, bool>, boost::json::value>::type boost::json::try_value_to<std::pair<int, bool>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 1x 100.0% 100.0% boost::json::result_for<std::pair<int, int>, boost::json::value>::type boost::json::try_value_to<std::pair<int, int>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 10x 100.0% 100.0% boost::json::result_for<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, boost::json::value>::type boost::json::try_value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 6x 100.0% 100.0% boost::json::result_for<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, boost::json::value>::type boost::json::try_value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 3x 100.0% 100.0% boost::json::result_for<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, boost::json::value>::type boost::json::try_value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 3x 100.0% 100.0% boost::json::result_for<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, boost::json::value>::type boost::json::try_value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 3x 100.0% 100.0% boost::json::result_for<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, boost::json::value>::type boost::json::try_value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 3x 100.0% 100.0% boost::json::result_for<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, boost::json::value>::type boost::json::try_value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 2x 100.0% 100.0% boost::json::result_for<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, boost::json::value>::type boost::json::try_value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 1x 100.0% 100.0% boost::json::result_for<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, boost::json::value>::type boost::json::try_value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 1x 100.0% 100.0% boost::json::result_for<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, boost::json::value>::type boost::json::try_value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 1x 100.0% 100.0% boost::json::result_for<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, boost::json::value>::type boost::json::try_value_to<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 1x 100.0% 100.0% boost::json::result_for<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, decltype(nullptr), value_to_test_ns::T2>, boost::json::value>::type boost::json::try_value_to<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, decltype(nullptr), value_to_test_ns::T2>, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 8x 100.0% 100.0% boost::json::result_for<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, decltype(nullptr), value_to_test_ns::T2>, boost::json::value>::type boost::json::try_value_to<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, decltype(nullptr), value_to_test_ns::T2>, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 4x 100.0% 100.0% boost::json::result_for<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, decltype(nullptr), value_to_test_ns::T2>, boost::json::value>::type boost::json::try_value_to<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, decltype(nullptr), value_to_test_ns::T2>, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 4x 100.0% 100.0% boost::json::result_for<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, decltype(nullptr), value_to_test_ns::T2>, boost::json::value>::type boost::json::try_value_to<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, decltype(nullptr), value_to_test_ns::T2>, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 4x 100.0% 100.0% boost::json::result_for<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, decltype(nullptr), value_to_test_ns::T2>, boost::json::value>::type boost::json::try_value_to<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool, decltype(nullptr), value_to_test_ns::T2>, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 4x 100.0% 100.0% boost::json::result_for<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > >, boost::json::value>::type boost::json::try_value_to<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 1x 100.0% 100.0% boost::json::result_for<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >, boost::json::value>::type boost::json::try_value_to<std::tuple<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 1x 100.0% 100.0% boost::json::result_for<std::vector<int, std::allocator<int> >, boost::json::value>::type boost::json::try_value_to<std::vector<int, std::allocator<int> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 11x 100.0% 100.0% boost::json::result_for<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, boost::json::value>::type boost::json::try_value_to<std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 5x 100.0% 100.0% boost::json::result_for<std::vector<value_to_test_ns::T2, std::allocator<value_to_test_ns::T2> >, boost::json::value>::type boost::json::try_value_to<std::vector<value_to_test_ns::T2, std::allocator<value_to_test_ns::T2> >, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 6x 100.0% 100.0% boost::json::result_for<std::vector<value_to_test_ns::T2, std::allocator<value_to_test_ns::T2> >, boost::json::value>::type boost::json::try_value_to<std::vector<value_to_test_ns::T2, std::allocator<value_to_test_ns::T2> >, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 3x 100.0% 100.0% boost::json::result_for<std::vector<value_to_test_ns::T2, std::allocator<value_to_test_ns::T2> >, boost::json::value>::type boost::json::try_value_to<std::vector<value_to_test_ns::T2, std::allocator<value_to_test_ns::T2> >, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 3x 100.0% 100.0% boost::json::result_for<std::vector<value_to_test_ns::T2, std::allocator<value_to_test_ns::T2> >, boost::json::value>::type boost::json::try_value_to<std::vector<value_to_test_ns::T2, std::allocator<value_to_test_ns::T2> >, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 3x 100.0% 100.0% boost::json::result_for<std::vector<value_to_test_ns::T2, std::allocator<value_to_test_ns::T2> >, boost::json::value>::type boost::json::try_value_to<std::vector<value_to_test_ns::T2, std::allocator<value_to_test_ns::T2> >, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 3x 100.0% 100.0% boost::json::result_for<unsigned char, boost::json::value>::type boost::json::try_value_to<unsigned char, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 12x 100.0% 100.0% boost::json::result_for<unsigned long, boost::json::value>::type boost::json::try_value_to<unsigned long, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 5x 100.0% 100.0% boost::json::result_for<user_ns2::ip_address, boost::json::value>::type boost::json::try_value_to<user_ns2::ip_address, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 2x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T1, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T1, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 6x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T11, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T11, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 6x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T12, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T12, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 18x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T2, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T2, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 50x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T2, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T2, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 16x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T2, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T2, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 16x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T2, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T2, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 16x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T2, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T2, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 16x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T3, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T3, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 12x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T3, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T3, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 3x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T3, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T3, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 3x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T3, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T3, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 3x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T3, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T3, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 3x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T4, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T4, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 2x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T4, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T4, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 1x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T4, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T4, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 1x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T4, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T4, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 1x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T4, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T4, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 1x 100.0% 100.0% boost::json::result_for<value_to_test_ns::T5, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T5, boost::json::detail::no_context>(boost::json::value const&, boost::json::detail::no_context const&) :195 2x 66.7% 67.0% boost::json::result_for<value_to_test_ns::T5, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T5, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<boost::json::detail::no_context, value_to_test_ns::custom_context> const&) :195 1x 66.7% 67.0% boost::json::result_for<value_to_test_ns::T5, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T5, std::tuple<std::tuple<value_to_test_ns::custom_context> > >(boost::json::value const&, std::tuple<std::tuple<value_to_test_ns::custom_context> > const&) :195 1x 66.7% 67.0% boost::json::result_for<value_to_test_ns::T5, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T5, std::tuple<value_to_test_ns::custom_context> >(boost::json::value const&, std::tuple<value_to_test_ns::custom_context> const&) :195 1x 66.7% 67.0% boost::json::result_for<value_to_test_ns::T5, boost::json::value>::type boost::json::try_value_to<value_to_test_ns::T5, value_to_test_ns::custom_context>(boost::json::value const&, value_to_test_ns::custom_context const&) :195 1x 66.7% 67.0% boost::json::result_for<unsigned char, boost::json::value>::type boost::json::try_value_to<unsigned char>(boost::json::value const&) :210 4x 100.0% 100.0%
Line TLA Hits Source Code
1 //
2 // Copyright (c) 2019 Vinnie Falco (vinnie.falco@gmail.com)
3 // Copyright (c) 2020 Krystian Stasiowski (sdkrystian@gmail.com)
4 // Copyright (c) 2022 Dmitry Arkhipov (grisumbras@gmail.com)
5 //
6 // Distributed under the Boost Software License, Version 1.0. (See accompanying
7 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
8 //
9 // Official repository: https://github.com/boostorg/json
10 //
11
12 #ifndef BOOST_JSON_VALUE_TO_HPP
13 #define BOOST_JSON_VALUE_TO_HPP
14
15 #include <boost/core/detail/static_assert.hpp>
16 #include <boost/json/detail/value_to.hpp>
17
18 namespace boost {
19 namespace json {
20
21 /** Convert a @ref value to an object of type `T`.
22
23 This function attempts to convert a @ref value
24 to `T` using
25
26 @li one of @ref value's accessors, or
27 @li a library-provided generic conversion, or
28 @li a user-provided overload of `tag_invoke`.
29
30 Out of the box the function supports default constructible types satisfying
31 {req_SequenceContainer}, arrays, arithmetic types, `bool`, `std::tuple`,
32 `std::pair`, `std::optional`, `std::variant`, `std::nullptr_t`, and structs
33 and enums described using Boost.Describe.
34
35 Conversion of other types is done by calling an overload of `tag_invoke`
36 found by argument-dependent lookup. Its signature should be similar to:
37
38 @code
39 template< class FullContext >
40 T tag_invoke( value_to_tag<T>, const value&, const Context& , const FullContext& );
41 @endcode
42
43 or
44
45 @code
46 T tag_invoke( value_to_tag<T>, const value&, const Context& );
47 @endcode
48
49 or
50
51 @code
52 result<T> tag_invoke( value_to_tag<T>, const value& );
53 @endcode
54
55 The overloads are checked for existence in that order and the first that
56 matches will be selected.
57
58 The object returned by the function call is returned by @ref value_to as
59 the result of the conversion.
60
61 The `ctx` argument can be used either as a tag type to provide conversions
62 for third-party types, or to pass extra data to the conversion function.
63
64 Overload **(3)** is **deleted** and participates in overload resolution
65 only when `U` is not @ref value. The overload exists to prevent unintented
66 creation of temporary @ref value instances, e.g.
67
68 @code
69 auto flag = value_to<bool>(true);
70 @endcode
71
72 @par Constraints
73 @code
74 ! std::is_reference< T >::value
75 @endcode
76
77 @par Exception Safety
78 Strong guarantee.
79
80 @tparam T The type to convert to.
81
82 @tparam Context The type of context passed to the conversion function.
83
84 @returns `jv` converted to `result<T>`.
85
86 @param jv The @ref value to convert.
87
88 @param ctx Context passed to the conversion function.
89
90 @see @ref value_to_tag, @ref value_from,
91 <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1895r0.pdf">
92 tag_invoke: A general pattern for supporting customisable functions</a>
93
94 @{
95 */
96 template< class T, class Context >
97 T
98 410x value_to( value const& jv, Context const& ctx )
99 {
100 BOOST_CORE_STATIC_ASSERT( ! std::is_reference<T>::value );
101 using bare_T = detail::remove_cvref<T>;
102 BOOST_CORE_STATIC_ASSERT((
103 detail::conversion_round_trips<
104 Context, bare_T, detail::value_to_conversion>::value));
105 using cat = detail::value_to_category<Context, bare_T>;
106 410x return detail::value_to_impl( cat(), value_to_tag<bare_T>(), jv, ctx );
107 }
108
109 /// Overload
110 template<class T>
111 T
112 131x value_to(const value& jv)
113 {
114 192x return value_to<T>( jv, detail::no_context() );
115 }
116
117 /// Overload
118 template<class T, class U
119 #ifndef BOOST_JSON_DOCS
120 , class = typename std::enable_if<!std::is_same<U, value>::value>::type
121 #endif
122 >
123 T
124 value_to(U const& jv) = delete;
125 /// @}
126
127 /** Convert a @ref value to a @ref boost::system::result.
128
129 This function attempts to convert a @ref value to `result<T>` using
130
131 @li one of @ref value's accessors, or
132 @li a library-provided generic conversion, or
133 @li a user-provided overload of `tag_invoke`.
134
135 Out of the box the function supports default constructible types satisfying
136 {req_SequenceContainer}, arrays, arithmetic types, `bool`, `std::tuple`,
137 `std::pair`, `std::optional`, `std::variant`, `std::nullptr_t`, and structs
138 and enums described using Boost.Describe.
139
140 Conversion of other types is done by calling an overload of `tag_invoke`
141 found by argument-dependent lookup. Its signature should be similar to:
142
143 @code
144 template< class FullContext >
145 result<T> tag_invoke( try_value_to_tag<T>, const value&, const Context& , const FullContext& );
146 @endcode
147
148 or
149
150 @code
151 result<T> tag_invoke( try_value_to_tag<T>, const value&, const Context& );
152 @endcode
153
154 or
155
156 @code
157 result<T> tag_invoke( try_value_to_tag<T>, const value& );
158 @endcode
159
160 The overloads are checked for existence in that order and the first that
161 matches will be selected.
162
163 If an error occurs during conversion, the result will store the error code
164 associated with the error. If an exception is thrown, the function will
165 attempt to retrieve the associated error code and return it, otherwise it
166 will return `error::exception`, unless the exception type is
167 @ref std::bad_alloc, which will be allowed to propagate.
168
169 The `ctx` argument can be used either as a tag type to provide conversions
170 for third-party types, or to pass extra data to the conversion function.
171
172 @par Constraints
173 @code
174 ! std::is_reference< T >::value
175 @endcode
176
177 @par Exception Safety
178 Strong guarantee.
179
180 @tparam T The type to convert to.
181 @tparam Context The type of context passed to the conversion function.
182
183 @param jv The @ref value to convert.
184 @param ctx Context passed to the conversion function.
185
186 @returns `jv` converted to `result<T>`.
187
188 @see @ref value_to_tag, @ref value_to, @ref value_from,
189 [tag_invoke: A general pattern for supporting customisable functions](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1895r0.pdf).
190
191 @{
192 */
193 template< class T, class Context >
194 typename result_for<T, value>::type
195 3763x try_value_to( value const& jv, Context const& ctx )
196 {
197 BOOST_CORE_STATIC_ASSERT( ! std::is_reference<T>::value );
198 using bare_T = detail::remove_cvref<T>;
199 BOOST_CORE_STATIC_ASSERT((
200 detail::conversion_round_trips<
201 Context, bare_T, detail::value_to_conversion>::value));
202 using cat = detail::value_to_category<Context, bare_T>;
203 3573x return detail::value_to_impl(
204 3757x cat(), try_value_to_tag<bare_T>(), jv, ctx );
205 }
206
207 /// Overload
208 template<class T>
209 typename result_for<T, value>::type
210 130x try_value_to(const value& jv)
211 {
212 163x return try_value_to<T>( jv, detail::no_context() );
213 }
214 /// @}
215
216 /** Determine if a @ref value can be converted to `T`.
217
218 If @ref value can be converted to `T` via a
219 call to @ref value_to, the static data member `value`
220 is defined as `true`. Otherwise, `value` is
221 defined as `false`.
222
223 @see @ref value_to
224 */
225 #ifdef BOOST_JSON_DOCS
226 template<class T>
227 using has_value_to = __see_below__;
228 #else
229 template<class T>
230 using has_value_to = detail::can_convert<
231 detail::remove_cvref<T>, detail::value_to_conversion>;
232 #endif
233
234 } // namespace json
235 } // namespace boost
236
237 #endif
238