visit
Invoke a function object with the contents of a value
.
Synopsis
Defined in header <boost/json/visit.hpp>.
template<
class Visitor>
decltype(static_cast< Visitor && >(v)(std::declval< std::nullptr_t & >()))
visit(
Visitor&& v,
value& jv); (1)
template<
class Visitor>
decltype(static_cast< Visitor && >(v)(std::declval< std::nullptr_t const & >()))
visit(
Visitor&& v,
value const& jv); (2)
template<
class Visitor>
decltype(static_cast< Visitor && >(v)(std::declval< std::nullptr_t && >()))
visit(
Visitor&& v,
value&& jv); (3)
Description
Invokes v
as if by std::forward<Visitor>(v)( X )
, where X
is
For overloads (1) and (2):
-
jv.get_array()
ifjv.is_array()
, or -
jv.get_object()
ifjv.is_object()
, or -
jv.get_string()
ifjv.is_string()
, or -
jv.get_int64()
ifjv.is_int64()
, or -
jv.get_uint64()
ifjv.is_uint64()
, or -
jv.get_double()
ifjv.is_double()
, or -
jv.get_bool()
ifjv.is_bool()
, or -
a
const
(2) or mutable (1) reference to an object of typestd::nullptr_t
ifjv.is_null()
.
For overload (3):
-
std::move( jv.get_array() )
ifjv.is_array()
, or -
std::move( jv.get_object() )
ifjv.is_object()
, or -
std::move( jv.get_string() )
ifjv.is_string()
, or -
std::move( jv.get_int64() )
ifjv.is_int64()
, or -
std::move( jv.get_uint64() )
ifjv.is_uint64()
, or -
std::move( jv.get_double() )
ifjv.is_double()
, or -
std::move( jv.get_bool() )
ifjv.is_bool()
, or -
std::nullptr_t()
ifjv.is_null()
.
Return Value
The value returned by v
.
Parameters
Name | Description |
---|---|
|
The visitation function to invoke |
|
The value to visit. |
Convenience header <boost/json.hpp>