|
|
| typed_storage_ext (void *pbuffer_) ETL_NOEXCEPT_EXPR(ETL_NOT_USING_EXCEPTIONS) |
| | Constructor.
|
|
template<typename T1> |
| | typed_storage_ext (void *pbuffer_, const T1 &t1) |
| | Constructs the instance of T with type T1.
|
|
template<typename T1, typename T2> |
| | typed_storage_ext (void *pbuffer_, const T1 &t1, const T2 &t2) |
| | Constructs the instance of T with types T1, T2.
|
|
template<typename T1, typename T2, typename T3> |
| | typed_storage_ext (void *pbuffer_, const T1 &t1, const T2 &t2, const T3 &t3) |
| | Constructs the instance of T with types T1, T2, T3.
|
|
template<typename T1, typename T2, typename T3, typename T4> |
| | typed_storage_ext (void *pbuffer_, const T1 &t1, const T2 &t2, const T3 &t3, const T4 &t4) |
| | Constructs the instance of T with types T1, T2, T3, T4.
|
| | ~typed_storage_ext () ETL_NOEXCEPT |
| bool | has_value () const ETL_NOEXCEPT |
| template<typename T1> |
| reference | create (const T1 &t1) |
| template<typename T1, typename T2> |
| reference | create (const T1 &t1, const T2 &t2) |
| template<typename T1, typename T2, typename T3> |
| reference | create (const T1 &t1, const T2 &t2, const T3 &t3) |
| template<typename T1, typename T2, typename T3, typename T4> |
| reference | create (const T1 &t1, const T2 &t2, const T3 &t3, const T4 &t4) |
|
void | destroy () ETL_NOEXCEPT |
| | Calls the destructor of the stored object, if created.
|
| pointer | operator-> () ETL_NOEXCEPT_EXPR(ETL_NOT_USING_EXCEPTIONS) |
| const_pointer | operator-> () const ETL_NOEXCEPT_EXPR(ETL_NOT_USING_EXCEPTIONS) |
| reference | operator* () ETL_NOEXCEPT_EXPR(ETL_NOT_USING_EXCEPTIONS) |
| const_reference | operator* () const ETL_NOEXCEPT_EXPR(ETL_NOT_USING_EXCEPTIONS) |
template<typename T>
class etl::typed_storage_ext< T >
Wrapper class wraps a supplied memory area and lets the user create an instance of T in this memory at runtime. This class also erases the destructor call of T, i.e. if typed_storage goes out of scope, the destructor if the wrapped type will not be called. This can be done explicitly by calling destroy().
- Template Parameters
-