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

  • jv.get_array() if jv.is_array(), or

  • jv.get_object() if jv.is_object(), or

  • jv.get_string() if jv.is_string(), or

  • jv.get_int64() if jv.is_int64(), or

  • jv.get_uint64() if jv.is_uint64(), or

  • jv.get_double() if jv.is_double(), or

  • jv.get_bool() if jv.is_bool(), or

  • reference to an object of type std::nullptr_t if jv.is_null().

Return Value

The value returned by Visitor.

Return Value

The value returned by Visitor.

Return Value

The value returned by Visitor.

Parameters

Name Description

v

The visitation function to invoke

jv

The value to visit.

Convenience header <boost/json.hpp>