![]() |
WPILibC++ 2025.3.2
|
Simple utility that automatically unwinds a Stack to a previously saved location.
More...
#include <wpi/memory/memory_stack.hpp>
Public Types | |
| using | stack_type = Stack |
| using | marker_type = typename stack_type::marker |
Public 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 |
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 wpi::memory::memory_stack
| using wpi::memory::memory_stack_raii_unwind< Stack >::marker_type = typename stack_type::marker |
| using wpi::memory::memory_stack_raii_unwind< Stack >::stack_type = Stack |
|
inlineexplicitnoexcept |
memory_stack_raii_unwind(stack, stack.top()).
|
inlinenoexcept |
|
inlinenoexcept |
other. other.will_unwind() will return false after it.
|
inlinenoexcept |
unwind().
|
inlinenoexcept |
will_unwind() must return true.
|
inlinenoexcept |
will_unwind() must return true.
|
inlinenoexcept |
other. other.will_unwind() will return false after it.
|
inlinenoexcept |
will_unwind() will return false.
|
inlinenoexcept |
will_unwind() must return true.
|
inlinenoexcept |