|
memory
|
Simple utility that automatically unwinds a Stack to a previously saved location.
A Stack is anything that provides a marker, a top() function returning a marker and an unwind() function to unwind to a marker, like a memory_stack
Typedefs | |
| using | stack_type |
| using | marker_type |
Member Functions | |
| memory_stack_raii_unwind (stack_type &stack) noexcept | |
| memory_stack_raii_unwind (stack_type &stack, marker_type marker) noexcept | |
| memory_stack_raii_unwind (memory_stack_raii_unwind &&other) noexcept | |
| ~memory_stack_raii_unwind () noexcept | |
| memory_stack_raii_unwind & | operator= (memory_stack_raii_unwind &&other) noexcept |
| void | release () noexcept |
| void | unwind () noexcept |
| bool | will_unwind () const noexcept |
| marker_type | get_marker () const noexcept |
| stack_type & | get_stack () const noexcept |
|
explicitnoexcept |
memory_stack_raii_unwind(stack, stack.top()).
|
noexcept |
|
noexcept |
other. other.will_unwind() will return false after it.
|
noexcept |
unwind().
|
noexcept |
other. other.will_unwind() will return false after it.
|
noexcept |
will_unwind() will return false.
|
noexcept |
will_unwind() must return true.
|
noexcept |
|
noexcept |
will_unwind() must return true.
|
noexcept |
will_unwind() must return true.
1.13.2