23 #if defined (HAVE_CONFIG_H) 41 if (
f.is_function_handle ())
45 error (
"onCleanup: no default dispatch for function handle");
54 if (pl !=
nullptr && pl->
length () > 0)
55 warning (
"onCleanup: cleanup action takes parameters");
61 error (
"onCleanup: argument must be a function handle");
87 catch (
const octave::interrupt_exception&)
91 warning (
"onCleanup: interrupt occurred in cleanup action");
93 catch (
const octave::execution_exception&)
96 warning (
"onCleanup: error caught while executing cleanup function:\n%s\n",
100 catch (
const octave::exit_exception&)
103 warning (
"onCleanup: exit disabled while executing cleanup function");
108 warning (
"onCleanup: internal error: unhandled exception in cleanup action");
123 warning (
"save: unable to save onCleanup variables, skipping");
139 warning (
"save: unable to save onCleanup variables, skipping");
157 warning (
"save: unable to save onCleanup variables, skipping");
186 DEFUN (onCleanup, args, ,
198 if (args.length () != 1)
OCTINTERP_API octave_value_list feval(const std::string &name, const octave_value_list &args=octave_value_list(), int nargout=0)
bool load_hdf5(octave_hdf5_id loc_id, const char *name)
static void recover_from_exception(void)
OCTINTERP_API void print_usage(void)
F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE * f
void newline(std::ostream &os) const
size_t length(void) const
#define DEFUN(name, args_name, nargout_name, doc)
Macro to define a builtin function.
void error(const char *fmt,...)
#define DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA(t, n, c)
bool is_defined(void) const
bool load_binary(std::istream &is, bool swap, octave::mach_info::float_format fmt)
octave::tree_parameter_list * parameter_list(void)
void print_raw(std::ostream &os, bool pr_as_read_syntax=false) const
void print_raw(std::ostream &os, bool pr_as_read_syntax=false) const
sig_atomic_t octave_interrupt_state
bool save_binary(std::ostream &os, bool &save_as_floats)
friend class octave_value
bool save_ascii(std::ostream &os)
void warning(const char *fmt,...)
octave::unwind_protect frame
OCTINTERP_API std::string last_error_message(void)
bool is_undefined(void) const
OCTAVE_EXPORT octave_value_list isa nd deftypefn *return ovl(args(0).isinteger())
FloatComplex(* fptr)(const FloatComplex &, float, int, octave_idx_type &)
void print(std::ostream &os, bool pr_as_read_syntax=false)
bool load_ascii(std::istream &is)
octave_scalar_map scalar_map_value(void) const
If this string is the system will ring the terminal sometimes it is useful to be able to print the original representation of the string
bool save_hdf5(octave_hdf5_id loc_id, const char *name, bool save_as_floats)
OCTINTERP_API void interpreter_try(octave::unwind_protect &)