GNU Octave  4.4.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
octave::action_container Class Referenceabstract

#include "action-container.h"

Inheritance diagram for octave::action_container:

Classes

class  delete_ptr_elem
 
class  elem
 
class  fcn_arg_elem
 
class  fcn_crefarg_elem
 
class  fcn_elem
 
class  method_arg2_elem
 An element for calling a member function with two arguments. More...
 
class  method_arg3_elem
 An element for calling a member function with three arguments. More...
 
class  method_arg4_elem
 An element for calling a member function with three arguments. More...
 
class  method_arg_elem
 
class  method_crefarg_elem
 
class  method_elem
 
class  restore_var_elem
 

Public Member Functions

 action_container (void)
 
 action_container (const action_container &)=delete
 
virtual ~action_container (void)=default
 
virtual void add (elem *new_elem)=0
 
template<typename T >
void add_delete (T *obj)
 
void add_fcn (void(*fcn)(void))
 
template<typename T >
void add_fcn (void(*action)(T), T val)
 
template<typename T >
void add_fcn (void(*action)(const T &), const T &val)
 
template<typename T >
void add_method (T *obj, void(T::*method)(void))
 
template<typename T >
void add_method (T &obj, void(T::*method)(void))
 
template<typename T , typename A >
void add_method (T *obj, void(T::*method)(A), A arg)
 
template<typename T , typename A >
void add_method (T &obj, void(T::*method)(A), A arg)
 
template<typename T , typename A >
void add_method (T *obj, void(T::*method)(const A &), const A &arg)
 
template<typename T , typename A >
void add_method (T &obj, void(T::*method)(const A &), const A &arg)
 
template<class T , class A , class B >
void add_method (T *obj, void(T::*method)(const A &, const B &), const A &arg_a, const B &arg_b)
 
template<class T , class A , class B , class C >
void add_method (T *obj, void(T::*method)(const A &, const B &, const C &), const A &arg_a, const B &arg_b, const C &arg_c)
 
template<class T , class A , class B , class C , class D >
void add_method (T *obj, void(T::*method)(const A &, const B &, const C &, const D &), const A &arg_a, const B &arg_b, const C &arg_c, const D &arg_d)
 
void discard (size_t num)
 
void discard (void)
 
virtual void discard_first (void)=0
 
bool empty (void) const
 
 operator bool (void) const
 
action_containeroperator= (const action_container &)=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)
 
virtual void run_first (void)=0
 
virtual size_t size (void) const =0
 

Detailed Description

Definition at line 42 of file action-container.h.

Constructor & Destructor Documentation

◆ action_container() [1/2]

octave::action_container::action_container ( void  )
inline

Definition at line 354 of file action-container.h.

◆ action_container() [2/2]

octave::action_container::action_container ( const action_container )
delete

◆ ~action_container()

virtual octave::action_container::~action_container ( void  )
virtualdefault

Member Function Documentation

◆ add()

virtual void octave::action_container::add ( elem new_elem)
pure virtual

◆ add_delete()

template<typename T >
void octave::action_container::add_delete ( T *  obj)
inline

Definition at line 457 of file action-container.h.

Referenced by get_data_and_bytesize(), and run_command_and_return_output().

◆ add_fcn() [1/3]

◆ add_fcn() [2/3]

template<typename T >
void octave::action_container::add_fcn ( void(*)(T)  action,
val 
)
inline

Definition at line 374 of file action-container.h.

References val.

◆ add_fcn() [3/3]

template<typename T >
void octave::action_container::add_fcn ( void(*)(const T &)  action,
const T &  val 
)
inline

Definition at line 381 of file action-container.h.

References val.

◆ add_method() [1/9]

◆ add_method() [2/9]

template<typename T >
void octave::action_container::add_method ( T &  obj,
void(T::*)(void)  method 
)
inline

Definition at line 394 of file action-container.h.

References method.

◆ add_method() [3/9]

template<typename T , typename A >
void octave::action_container::add_method ( T *  obj,
void(T::*)(A method,
A  arg 
)
inline

Definition at line 401 of file action-container.h.

References arg, and method.

◆ add_method() [4/9]

template<typename T , typename A >
void octave::action_container::add_method ( T &  obj,
void(T::*)(A method,
A  arg 
)
inline

Definition at line 407 of file action-container.h.

References arg, and method.

◆ add_method() [5/9]

template<typename T , typename A >
void octave::action_container::add_method ( T *  obj,
void(T::*)(const A &)  method,
const A arg 
)
inline

Definition at line 414 of file action-container.h.

References arg, and method.

◆ add_method() [6/9]

template<typename T , typename A >
void octave::action_container::add_method ( T &  obj,
void(T::*)(const A &)  method,
const A arg 
)
inline

Definition at line 420 of file action-container.h.

References arg, and method.

◆ add_method() [7/9]

template<class T , class A , class B >
void octave::action_container::add_method ( T *  obj,
void(T::*)(const A &, const B &)  method,
const A arg_a,
const B arg_b 
)
inline

Definition at line 427 of file action-container.h.

References arg_a, arg_b, and method.

◆ add_method() [8/9]

template<class T , class A , class B , class C >
void octave::action_container::add_method ( T *  obj,
void(T::*)(const A &, const B &, const C &)  method,
const A arg_a,
const B arg_b,
const C arg_c 
)
inline

Definition at line 435 of file action-container.h.

References arg_a, arg_b, arg_c, and method.

◆ add_method() [9/9]

template<class T , class A , class B , class C , class D >
void octave::action_container::add_method ( T *  obj,
void(T::*)(const A &, const B &, const C &, const D &)  method,
const A arg_a,
const B arg_b,
const C arg_c,
const D &  arg_d 
)
inline

Definition at line 445 of file action-container.h.

References arg_a, arg_b, arg_c, and method.

◆ discard() [1/2]

void octave::action_container::discard ( size_t  num)
inline

◆ discard() [2/2]

void octave::action_container::discard ( void  )
inline

Definition at line 502 of file action-container.h.

References discard().

Referenced by discard().

◆ discard_first()

virtual void octave::action_container::discard_first ( void  )
pure virtual

◆ empty()

bool octave::action_container::empty ( void  ) const
inline

Definition at line 506 of file action-container.h.

◆ operator bool()

octave::action_container::operator bool ( void  ) const
inline

Definition at line 476 of file action-container.h.

References empty.

◆ operator=()

action_container& octave::action_container::operator= ( const action_container )
delete

◆ protect_var() [1/2]

template<typename T >
void octave::action_container::protect_var ( T &  var)
inline

Definition at line 464 of file action-container.h.

References var.

Referenced by octave_user_script::call(), octave_user_function::call(), call_mex(), delete_graphics_objects(), do_edit_history(), do_run_history(), octave::tree_evaluator::do_unwind_protect_cleanup_code(), Fdaspk(), Fdasrt(), Fdassl(), Flsode(), octave::flush_stdout(), Fquad(), G__eigs__(), generate_struct_completions(), octave::file_editor_tab::handle_context_menu_break_condition(), octave::dynamic_loader::load_mex(), octave::dynamic_loader::load_oct(), looks_like_struct(), maybe_enter_debugger(), octave::tree::meets_bp_condition(), octave_struct::print_raw(), octave_scalar_struct::print_raw(), base_graphics_object::remove_all_listeners(), octave::load_path::set(), sparse(), octave_class::subsasgn_common(), 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::tree_evaluator::visit_complex_for_command(), octave::jit_convert::visit_do_until_command(), octave::tree_evaluator::visit_do_until_command(), octave::jit_convert::visit_simple_for_command(), octave::tree_evaluator::visit_simple_for_command(), octave::tree_evaluator::visit_try_catch_command(), octave::jit_convert::visit_while_command(), octave::tree_evaluator::visit_while_command(), warning_1(), and octave_oncleanup::~octave_oncleanup().

◆ protect_var() [2/2]

template<typename T >
void octave::action_container::protect_var ( T &  var,
const T &  val 
)
inline

Definition at line 471 of file action-container.h.

References val, and var.

◆ run() [1/2]

◆ run() [2/2]

void octave::action_container::run ( void  )
inline

Definition at line 489 of file action-container.h.

References run().

Referenced by run().

◆ run_first()

virtual void octave::action_container::run_first ( void  )
pure virtual

◆ size()

virtual size_t octave::action_container::size ( void  ) const
pure virtual

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