oa::Optional

Optional class in the OA Core public surface.

Public Methods

T & oa::Optional::emplace(Args &&... inArgs)
T * oa::Optional::get()
const T * oa::Optional::get()
bool oa::Optional::hasValue()
bool oa::Optional::operator bool()
T & oa::Optional::operator*()
const T & oa::Optional::operator*()
T * oa::Optional::operator->()
const T * oa::Optional::operator->()
Optional<T> & oa::Optional::operator=(Optional<T> && inOther)
Optional<T> & oa::Optional::operator=(const Optional<T> & inOther)
void oa::Optional::Optional<T>()
void oa::Optional::Optional<T>(Optional<T> && inOther)
void oa::Optional::Optional<T>(T && inValue)
void oa::Optional::Optional<T>(const Optional<T> & inOther)
void oa::Optional::Optional<T>(const T & inValue)
void oa::Optional::reset()
T & oa::Optional::value()
const T & oa::Optional::value()
T oa::Optional::valueOr(U && inDefault)
T oa::Optional::valueOr(U && inDefault)

Constructor & Destructor Documentation

void oa::Optional::~Optional<T>()
No public source comment is attached to this declaration.

Returns

void

The declared return value.

Public Method Documentation

T & oa::Optional::emplace( Args &&... inArgs )
No public source comment is attached to this declaration.

Parameters

inArgs
Args &&...

Returns

T &

The declared return value.

T * oa::Optional::get()
No public source comment is attached to this declaration.

Returns

T *

The declared return value.

const T * oa::Optional::get()
No public source comment is attached to this declaration.

Returns

const T *

The declared return value.

bool oa::Optional::hasValue()
No public source comment is attached to this declaration.

Returns

bool

The declared return value.

bool oa::Optional::operator bool()
No public source comment is attached to this declaration.

Returns

bool

The declared return value.

T & oa::Optional::operator*()
No public source comment is attached to this declaration.

Returns

T &

The declared return value.

const T & oa::Optional::operator*()
No public source comment is attached to this declaration.

Returns

const T &

The declared return value.

T * oa::Optional::operator->()
No public source comment is attached to this declaration.

Returns

T *

The declared return value.

const T * oa::Optional::operator->()
No public source comment is attached to this declaration.

Returns

const T *

The declared return value.

Optional<T> & oa::Optional::operator=( Optional<T> && inOther )
No public source comment is attached to this declaration.

Parameters

inOther
Optional<T> &&

Returns

Optional<T> &

The declared return value.

Optional<T> & oa::Optional::operator=( const Optional<T> & inOther )
No public source comment is attached to this declaration.

Parameters

inOther
const Optional<T> &

Returns

Optional<T> &

The declared return value.

void oa::Optional::Optional<T>()
No public source comment is attached to this declaration.

Returns

void

The declared return value.

void oa::Optional::Optional<T>( Optional<T> && inOther )
No public source comment is attached to this declaration.

Parameters

inOther
Optional<T> &&

Returns

void

The declared return value.

void oa::Optional::Optional<T>( T && inValue )
No public source comment is attached to this declaration.

Parameters

inValue
T &&

Returns

void

The declared return value.

void oa::Optional::Optional<T>( const Optional<T> & inOther )
No public source comment is attached to this declaration.

Parameters

inOther
const Optional<T> &

Returns

void

The declared return value.

void oa::Optional::Optional<T>( const T & inValue )
No public source comment is attached to this declaration.

Parameters

inValue
const T &

Returns

void

The declared return value.

void oa::Optional::reset()
No public source comment is attached to this declaration.

Returns

void

The declared return value.

T & oa::Optional::value()
No public source comment is attached to this declaration.

Returns

T &

The declared return value.

const T & oa::Optional::value()
No public source comment is attached to this declaration.

Returns

const T &

The declared return value.

T oa::Optional::valueOr( U && inDefault )
No public source comment is attached to this declaration.

Parameters

inDefault
U &&

Returns

T

The declared return value.

T oa::Optional::valueOr( U && inDefault )
No public source comment is attached to this declaration.

Parameters

inDefault
U &&

Returns

T

The declared return value.