result_for
Helper trait that returns boost::system::result
Synopsis
Defined in header <boost/json/result_for.hpp>.
template<
class T1,
class T2>
struct result_for;
Description
The primary template is an incomplete type. The library provides a partial specialisation result_for<T1, value>
, that has nested type alias type
that aliases the type result<T1>
.
The purpose of this trait is to let users provide non-throwing conversions for their types without creating a physical dependency on Boost.Json. For example:
namespace boost
{
namespace json
{
template<class T>
struct value_to_tag;
template<class T1, class T2>
struct result_for;
}
}
namespace mine
{
class my_class;
...
template<class JsonValue>
boost::json::result_for<my_class, JsonValue>
tag_invoke(boost::json::try_value_to_tag<my_class>, const JsonValue& jv)
{ ... }
}
See Also
Convenience header <boost/json.hpp>.