|
REAL
Regular Expression Algorithmic Library — constexpr C++20 regex
|
The either-or storage: the inline buffer, or a pointer to the heap block once the vector has spilled. is_heap_ says which member is active. More...
Public Member Functions | |
| constexpr | Storage () noexcept |
| Starts in the inline state. | |
| constexpr | ~Storage () |
| Destruction handled by cleanup. | |
| Storage (const Storage &)=delete | |
| Storage & | operator= (const Storage &)=delete |
| Storage (Storage &&)=delete | |
| Storage & | operator= (Storage &&)=delete |
Public Attributes | |
| inline_block | inline_buffer |
| Inline storage (when not heap). | |
| T * | heap_ptr |
| Heap storage (when is_heap_). | |
The either-or storage: the inline buffer, or a pointer to the heap block once the vector has spilled. is_heap_ says which member is active.
|
inlineconstexprnoexcept |
Starts in the inline state.
Run time leaves the inline buffer uninitialized (see the class warning). Constant evaluation activates the whole inline_block (a constexpr union can activate a class-type member, not a bare C array); adopt_heap and revert_to_inline switch the active member.