#include "unwind-prot.h"
Public Member Functions | |
unwind_protect_safe (const unwind_protect_safe &)=delete | |
unwind_protect_safe (void) | |
~unwind_protect_safe (void) | |
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 (size_t num) |
void | discard (void) |
void | discard_first (void) |
bool | empty (void) const |
operator bool (void) const | |
unwind_protect_safe & | operator= (const unwind_protect_safe &)=delete |
template<typename T > | |
void | protect_var (T &var) |
template<typename T > | |
void | protect_var (T &var, const T &val) |
void | run (size_t num) |
void | run (void) |
void | run_first (void) |
size_t | size (void) const |
Protected Member Functions | |
virtual void | add_action (elem *new_elem) |
Protected Attributes | |
std::stack< elem * > | m_lifo |
Private Member Functions | |
void | warn_unhandled_exception (void) const |
Definition at line 99 of file unwind-prot.h.
|
inline |
Definition at line 109 of file unwind-prot.h.
|
delete |
|
inline |
Definition at line 117 of file unwind-prot.h.
|
inlineinherited |
Definition at line 142 of file action-container.h.
Referenced by octave::tree_evaluator::enter_debugger(), octave::event_manager::post_event(), octave::debugger::repl(), and set_format_style().
|
inlineprotectedvirtualinherited |
Implements octave::action_container.
Definition at line 87 of file unwind-prot.h.
|
inlineinherited |
Definition at line 173 of file action-container.h.
Referenced by get_data_and_bytesize(), and run_command_and_return_output().
|
inlineinherited |
Definition at line 153 of file action-container.h.
Referenced by octave::history_system::do_edit_history(), octave::history_system::do_history(), do_rand(), octave::history_system::do_run_history(), octave::tree_evaluator::enter_debugger(), F__delaunayn__(), F__ftp_mget__(), F__native2unicode__(), F__unicode2native__(), F__voronoi__(), Faudioinfo(), Faudioread(), Faudiowrite(), Fconvhulln(), octave::curl_transfer::form_data_post(), Fsystem(), octave::curl_transfer::ftp_file_or_dir_action(), Furlwrite(), Fwaitfor(), octave::gl2ps_print(), octave::sys::glob(), octave::base_url_transfer::mget_directory(), octave::base_url_transfer::mput_directory(), octave::popen(), octave::sys::putenv_wrapper(), octave::curl_transfer::pwd(), octave::curl_transfer::rename(), octave::curl_transfer::set_header_fields(), octave::string::u8_from_encoding(), octave::string::u8_to_encoding(), octave::string::u8_validate(), and octave::sys::windows_glob().
|
inlineinherited |
Definition at line 165 of file action-container.h.
|
inlineinherited |
Definition at line 159 of file action-container.h.
Referenced by octave::tree_evaluator::do_unwind_protect_cleanup_code(), octave::call_stack::do_who(), octave::tree_evaluator::enter_debugger(), callback_property::execute(), gh_manager::execute_callback(), octave::interpreter::execute_command_line_file(), octave::base_parser::finish_array_list(), octave::interpreter::initialize_load_path(), octave::anonymous_fcn_handle::load_ascii(), octave::anonymous_fcn_handle::load_binary(), octave::anonymous_fcn_handle::load_hdf5(), octave::base_parser::make_colon_expression(), octave::cdef_class::make_meta_class(), mexGetVariable(), mexPutVariable(), octave::tree_evaluator::push_echo_state_cleanup(), octave::debugger::repl(), octave::jit_convert::resolve(), run_command_and_return_output(), and octave::tree_evaluator::source_file().
|
inlineinherited |
Definition at line 202 of file action-container.h.
Referenced by octave::event_manager::discard_events(), octave::tree_evaluator::do_unwind_protect_cleanup_code(), F__ftp_mget__(), Furlwrite(), octave::base_url_transfer::mget_directory(), and set_format_style().
|
inlineinherited |
Definition at line 211 of file action-container.h.
References octave::action_container::discard().
Referenced by octave::action_container::discard().
|
inlinevirtualinherited |
Implements octave::action_container.
Definition at line 73 of file unwind-prot.h.
|
inlineinherited |
Definition at line 215 of file action-container.h.
|
inlineinherited |
Definition at line 60 of file unwind-prot.h.
|
delete |
|
inlineinherited |
Definition at line 180 of file action-container.h.
Referenced by call_mex(), octave_oncleanup::call_object_destructor(), DEFMETHOD(), DEFMETHODX(), delete_graphics_objects(), octave::history_system::do_edit_history(), octave::history_system::do_run_history(), octave::tree_evaluator::do_unwind_protect_cleanup_code(), F__eigs__(), Fdrawnow(), octave::output_system::flush_stdout(), Frats(), Fsparse(), octave::error_system::interpreter_try(), octave::dynamic_loader::load_mex(), octave::dynamic_loader::load_oct(), maybe_missing_function_hook(), octave_struct::print_raw(), octave_scalar_struct::print_raw(), gnuplot_graphics_toolkit::redraw_figure(), octave::cdef_object_rep::release(), octave::debugger::repl(), octave::load_path::set(), set_format_style(), octave::tree_evaluator::source_file(), octave_class::subsasgn_common(), octave::ft_text_renderer::text_to_strlist(), try_local_protect(), axes::properties::update_aspectratios(), axes::properties::update_axes_layout(), axes::update_axis_limits(), hggroup::update_axis_limits(), axes::properties::update_title_position(), axes::properties::update_xlabel_position(), axes::properties::update_ylabel_position(), axes::properties::update_zlabel_position(), octave::jit_convert::visit(), octave::jit_convert::visit_do_until_command(), octave::jit_convert::visit_simple_for_command(), octave::jit_convert::visit_while_command(), and octave::error_system::vwarning().
|
inlineinherited |
Definition at line 187 of file action-container.h.
|
inherited |
Definition at line 31 of file action-container.cc.
References octave::command_editor::event_loop_interrupted(), octave::command_editor::interrupt_event_loop(), octave::action_container::run_first(), and octave::action_container::size().
Referenced by octave::tree_evaluator::do_unwind_protect_cleanup_code(), and octave::event_manager::process_events().
|
inlineinherited |
Definition at line 198 of file action-container.h.
References octave::action_container::run().
Referenced by octave::action_container::run().
|
inlinevirtualinherited |
Implements octave::action_container.
Definition at line 62 of file unwind-prot.h.
Referenced by octave::load_path::set().
|
inlinevirtualinherited |
Implements octave::action_container.
Definition at line 83 of file unwind-prot.h.
|
private |
Definition at line 36 of file unwind-prot.cc.
|
protectedinherited |
Definition at line 92 of file unwind-prot.h.