value::try_as_int64

Return result with a reference to the underlying std::int64_t

Synopsis

boost::system::result< std::int64_t & >
try_as_int64() noexcept; (1)

boost::system::result< std::int64_t >
try_as_int64() const noexcept; (2)

Description

If is_int64() is true, the result contains a reference to the underlying std::int64_t, otherwise it contains an error_code.

Example

The return value can be used in both a boolean context and to assign a variable:

if( auto r = jv.try_as_int64() )
    return *r;

But can also be used to throw an exception on error:

return jv.try_as_int64().value();

Complexity

Constant.

Exception Safety

No-throw guarantee.