class OptionalStorage
Declaration
template <
typename T,
bool =
(llvm::is_trivially_copy_constructible<type - parameter - 0 -
0>::value &&
std::is_trivially_copy_assignable<type - parameter - 0 -
0>::value &&
(llvm::is_trivially_move_constructible<type - parameter - 0 -
0>::value ||
!std::is_move_constructible<type - parameter - 0 -
0>::value) &&
(std::is_trivially_move_assignable<type - parameter - 0 -
0>::value ||
!std::is_move_assignable<type - parameter - 0 - 0>::value))>
class OptionalStorage { /* full declaration omitted */ };
Declared at: llvm/include/llvm/ADT/Optional.h:60
Templates
- T
- bool = (llvm::is_trivially_copy_constructible<type-parameter-0-0>::value && std::is_trivially_copy_assignable<type-parameter-0-0>::value && (llvm::is_trivially_move_constructible<type-parameter-0-0>::value || !std::is_move_constructible<type-parameter-0-0>::value) && (std::is_trivially_move_assignable<type-parameter-0-0>::value || !std::is_move_assignable<type-parameter-0-0>::value))
Member Variables
- private anonymous struct / union
- private bool hasVal = false
Method Overview
- public constexpr OptionalStorage<T, >() noexcept
- public constexpr OptionalStorage<T, >(const OptionalStorage<T, > & other)
- public constexpr OptionalStorage<T, >(OptionalStorage<T, > && other)
- public template <class... Args>constexpr OptionalStorage<T, >(llvm::in_place_t, Args &&... args)
- public template <class... Args>void emplace(Args &&... args)
- public T & getValue() & noexcept
- public constexpr const T & getValue() const & noexcept
- public T && getValue() && noexcept
- public constexpr bool hasValue() const noexcept
- public constexpr bool has_value() const noexcept
- public void reset() noexcept
- public T & value() & noexcept
- public constexpr const T & value() const & noexcept
- public T && value() && noexcept
- public ~OptionalStorage<T, >()
Methods
¶constexpr OptionalStorage<T, >() noexcept
constexpr OptionalStorage<T, >() noexcept
Declared at: llvm/include/llvm/ADT/Optional.h:70
¶constexpr OptionalStorage<T, >(
const OptionalStorage<T, >& other)
constexpr OptionalStorage<T, >(
const OptionalStorage<T, >& other)
Declared at: llvm/include/llvm/ADT/Optional.h:72
Parameters
- const OptionalStorage<T, >& other
¶constexpr OptionalStorage<T, >(
OptionalStorage<T, >&& other)
constexpr OptionalStorage<T, >(
OptionalStorage<T, >&& other)
Declared at: llvm/include/llvm/ADT/Optional.h:77
Parameters
- OptionalStorage<T, >&& other
¶template <class... Args>
constexpr OptionalStorage<T, >(llvm::in_place_t,
Args&&... args)
template <class... Args>
constexpr OptionalStorage<T, >(llvm::in_place_t,
Args&&... args)
Declared at: llvm/include/llvm/ADT/Optional.h:84
Templates
- Args
Parameters
- llvm::in_place_t
- Args&&... args
¶template <class... Args>
void emplace(Args&&... args)
template <class... Args>
void emplace(Args&&... args)
Declared at: llvm/include/llvm/ADT/Optional.h:122
Templates
- Args
Parameters
- Args&&... args
¶T& getValue() & noexcept
T& getValue() & noexcept
Declared at: llvm/include/llvm/ADT/Optional.h:101
¶constexpr const T& getValue() const& noexcept
constexpr const T& getValue() const& noexcept
Declared at: llvm/include/llvm/ADT/Optional.h:109
¶T&& getValue() && noexcept
T&& getValue() && noexcept
Declared at: llvm/include/llvm/ADT/Optional.h:117
¶constexpr bool hasValue() const noexcept
constexpr bool hasValue() const noexcept
Declared at: llvm/include/llvm/ADT/Optional.h:95
¶constexpr bool has_value() const noexcept
constexpr bool has_value() const noexcept
Declared at: llvm/include/llvm/ADT/Optional.h:94
¶void reset() noexcept
void reset() noexcept
Declared at: llvm/include/llvm/ADT/Optional.h:87
¶T& value() & noexcept
T& value() & noexcept
Declared at: llvm/include/llvm/ADT/Optional.h:97
¶constexpr const T& value() const& noexcept
constexpr const T& value() const& noexcept
Declared at: llvm/include/llvm/ADT/Optional.h:105
¶T&& value() && noexcept
T&& value() && noexcept
Declared at: llvm/include/llvm/ADT/Optional.h:113
¶~OptionalStorage<T, >()
~OptionalStorage<T, >()
Declared at: llvm/include/llvm/ADT/Optional.h:68