A result‐like type that always holds a value (never error or stopped).

Synopsis

Declared in <folly/result/value_only_result.h>

template<typename T = void>
class [[nodiscard]] value_only_result final
    : public /* implementation-defined */

Description

The default specialization is non‐`void`, but value_only_result<> defaults to void.

Base Classes

Name

Description

/* implementation-defined */

Type Aliases

Name

value_type

Member Functions

Name

Description

value_only_result [constructor]

Constructors

operator=

Assignment operators

copy [deprecated]

get_pointer

get_pointer overloads

has_stopped

has_value

value_only

value_only overloads

value_or_throw

value_or_throw overloads

operator result<T>

Converts to a result<T>, moving out the contained value.

operator==

Equality operator

Using Declarations

Protected Type Aliases

Protected Data Members

Name

value_

Specializations

Deduction Guides

Name

Description

value_only_result<T&>

Deduction guide: std::reference_wrapper<T> yields value_only_result<T&>.

value_only_result<T&&>

Deduction guide: rvalue_reference_wrapper<T> yields value_only_result<T&&>.

Return Value

Note

The return value should not be discarded.

Created with MrDocs