GNU Octave  9.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
unwind_protect_safe Class Reference

#include "unwind-prot.h"

Inheritance diagram for unwind_protect_safe:
unwind_protect action_container

Public Member Functions

 unwind_protect_safe ()
 
 ~unwind_protect_safe ()
 
- Public Member Functions inherited from unwind_protect
 unwind_protect ()
 
 ~unwind_protect ()
 
void discard_first ()
 
 operator bool () const
 
void run_first ()
 
std::size_t size () const
 
- Public Member Functions inherited from action_container
 action_container ()
 
virtual ~action_container ()=default
 
template<typename F , typename... Args>
void add (F &&fcn, Args &&... args)
 
template<typename T >
void add_delete (T *obj)
 
template<typename... Params, typename... Args>
void add_fcn (void(*fcn)(Params...), Args &&... args)
 
template<typename T , typename... Params, typename... Args>
void add_method (T &obj, void(T::*method)(Params...), Args &&... args)
 
template<typename T , typename... Params, typename... Args>
void add_method (T *obj, void(T::*method)(Params...), Args &&... args)
 
void discard ()
 
void discard (std::size_t num)
 
bool empty () const
 
 operator bool () const
 
template<typename T >
void protect_var (T &var)
 
template<typename T >
void protect_var (T &var, const T &val)
 
void run ()
 
void run (std::size_t num)
 

Additional Inherited Members

- Protected Member Functions inherited from unwind_protect
virtual void add_action (elem *new_elem)
 
- Protected Attributes inherited from unwind_protect
std::stack< elem * > m_lifo
 

Detailed Description

Definition at line 95 of file unwind-prot.h.

Constructor & Destructor Documentation

◆ unwind_protect_safe()

unwind_protect_safe::unwind_protect_safe ( )
inline

Definition at line 105 of file unwind-prot.h.

◆ ~unwind_protect_safe()

unwind_protect_safe::~unwind_protect_safe ( )
inline

Definition at line 109 of file unwind-prot.h.


The documentation for this class was generated from the following files: