template <typename I, size_t Reserve, size_t Align, inline_any_is_pinned Pinned>
class inline_any_impl
Defined at line 28 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
Public Methods
void inline_any_impl<I, Reserve, Align, Pinned> ()
Constructs an empty container.
Defined at line 54 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
void ~inline_any_impl<I, Reserve, Align, Pinned> ()
Defined at line 56 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, requires_conditions<is_compatible<T>> = 0>
void inline_any_impl<I, Reserve, Align, Pinned> (T && value)
Defined at line 59 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, requires_conditions<is_compatible<T>> = 0>
void inline_any_impl<I, Reserve, Align, Pinned> (T && value)
Defined at line 59 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename... Args, requires_conditions<std::is_constructible<T, Args...>, is_compatible<T>> = 0>
void inline_any_impl<I, Reserve, Align, Pinned> (std::in_place_type_t<T> , Args &&... args)
Defined at line 65 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename... Args, requires_conditions<std::is_constructible<T, Args...>, is_compatible<T>> = 0>
void inline_any_impl<I, Reserve, Align, Pinned> (std::in_place_type_t<T> , Args &&... args)
Defined at line 65 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
void inline_any_impl<I, Reserve, Align, Pinned> (const inline_any_impl<I, Reserve, Align, Pinned> & other)
Defined at line 69 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
void inline_any_impl<I, Reserve, Align, Pinned> (inline_any_impl<I, Reserve, Align, Pinned> && other)
Defined at line 72 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T>
assignment_requires<is_compatible<T>> operator= (T && value)
|assignment_requires| becomes |inline_any_impl
&
| when the condition is satisfied.
NOLINTNEXTLINE: clang-tidy doesn't understand |assignment_requires|.
Defined at line 80 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T>
assignment_requires<is_compatible<T>> operator= (T && value)
|assignment_requires| becomes |inline_any_impl
&
| when the condition is satisfied.
NOLINTNEXTLINE: clang-tidy doesn't understand |assignment_requires|.
Defined at line 80 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
inline_any_impl<I, Reserve, Align, Pinned> & operator= (const inline_any_impl<I, Reserve, Align, Pinned> & other)
Defined at line 91 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
inline_any_impl<I, Reserve, Align, Pinned> & operator= (inline_any_impl<I, Reserve, Align, Pinned> && other)
Defined at line 103 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename... Args, requires_conditions<is_compatible<T>> = 0>
T & emplace (Args &&... args)
Initializes the container with an object of type |T|.
Example:
fit::inline_any
<Animal
> animal;
animal.emplace
<Dog
>(args_to_dog_constructor);
Defined at line 125 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename... Args, requires_conditions<is_compatible<T>> = 0>
T & emplace (Args &&... args)
Initializes the container with an object of type |T|.
Example:
fit::inline_any
<Animal
> animal;
animal.emplace
<Dog
>(args_to_dog_constructor);
Defined at line 125 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
void reset ()
Resets the container back to an empty state.
Defined at line 133 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
bool has_value ()
Whether the container contains an object.
Defined at line 139 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, requires_conditions<is_compatible<T>> = 0>
bool is ()
Whether the stored object type is |T|.
Defined at line 143 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, requires_conditions<is_compatible<T>> = 0>
bool is ()
Whether the stored object type is |T|.
Defined at line 143 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
I * operator-> ()
Defined at line 147 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
const I * operator-> ()
Defined at line 153 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, requires_conditions<is_compatible<T>> = 0>
T & as ()
Asserts that the stored object type is |T|, then access it.
Defined at line 162 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, requires_conditions<is_compatible<T>> = 0>
T & as ()
Asserts that the stored object type is |T|, then access it.
Defined at line 162 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, requires_conditions<is_compatible<T>> = 0>
const T & as ()
Defined at line 169 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, requires_conditions<is_compatible<T>> = 0>
const T & as ()
Defined at line 169 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename Callable, requires_conditions<std::is_invocable<Callable, I&>> = 0>
decltype(auto) visit (Callable && visitor)
Asserts that an object is contained, then invokes |visitor| with a reference.
Defined at line 178 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename Callable, requires_conditions<std::is_invocable<Callable, const I*>> = 0>
decltype(auto) visit (Callable && visitor)
Defined at line 185 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename Callable, requires_conditions<std::is_invocable<Callable, I*>> = 0>
decltype(auto) visit (Callable && visitor)
Asserts that an object is contained, then invokes |visitor| with a pointer.
Defined at line 194 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename Callable, requires_conditions<std::is_invocable<Callable, const I&>> = 0>
decltype(auto) visit (Callable && visitor)
Defined at line 201 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename Callable, requires_conditions<is_compatible<T>, std::is_invocable<Callable, T&>> = 0>
decltype(auto) visit_as (Callable && visitor)
Asserts that the stored object type is |T|, then invokes |visitor| with a reference.
Defined at line 211 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename Callable, requires_conditions<is_compatible<T>, std::is_invocable<Callable, T&>> = 0>
decltype(auto) visit_as (Callable && visitor)
Asserts that the stored object type is |T|, then invokes |visitor| with a reference.
Defined at line 211 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename Callable, requires_conditions<is_compatible<T>, std::is_invocable<Callable, const T&>> = 0>
decltype(auto) visit_as (Callable && visitor)
Defined at line 219 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename Callable, requires_conditions<is_compatible<T>, std::is_invocable<Callable, const T&>> = 0>
decltype(auto) visit_as (Callable && visitor)
Defined at line 219 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename Callable, requires_conditions<is_compatible<T>, std::is_invocable<Callable, T*>> = 0>
decltype(auto) visit_as (Callable && visitor)
Asserts that the stored object type is |T|, then invokes |visitor| with a pointer.
Defined at line 229 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename Callable, requires_conditions<is_compatible<T>, std::is_invocable<Callable, T*>> = 0>
decltype(auto) visit_as (Callable && visitor)
Asserts that the stored object type is |T|, then invokes |visitor| with a pointer.
Defined at line 229 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename Callable, requires_conditions<is_compatible<T>, std::is_invocable<Callable, const T*>> = 0>
decltype(auto) visit_as (Callable && visitor)
Defined at line 237 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h
template <typename T, typename Callable, requires_conditions<is_compatible<T>, std::is_invocable<Callable, const T*>> = 0>
decltype(auto) visit_as (Callable && visitor)
Defined at line 237 of file ../../sdk/lib/fit/include/lib/fit/internal/inline_any.h