mrdocs::Expected<T&, E>

Expected specialization for lvalue references. Holds either a bound reference to T or an unexpected error E.

Synopsis

template<
    class T,
    class E>
class Expected<T&, E>;

Type Aliases

Name

Description

error_type

Error type carried when disengaged.

rebind

Rebind the reference to another value type while keeping E.

unexpected_type

Convenience alias for the unexpected wrapper.

value_type

Referenced value type.

Member Functions

Name

Description

Expected [constructor]

Constructors

~Expected [destructor]

Destroy the held error when disengaged.

operator=

Assignment operators

and_then

and_then overloads

emplace

emplace overloads

error

error overloads

error_or

error_or overloads

has_value

Check whether the Expected currently contains a reference.

operator*

Dereference operators

operator‐>

Access the bound reference pointer; undefined if disengaged.

or_else

or_else overloads

swap

Swap state with another reference Expected.

transform

transform overloads

transform_error

transform_error overloads

value

value overloads

value_or

value_or overloads

operator bool

Return true when a reference is bound.

Data Members

Name

Description

p_ [variant member]

Pointer to the referenced value when engaged.

unex_ [variant member]

Stored unexpected error when disengaged.

Friends

Name

Description

mrdocs::operator==

Equality operator

mrdocs::operator==

Equality operator

mrdocs::operator==

Equality operator

mrdocs::swap

Created with MrDocs