23 #if ! defined (octave_defun_int_h) 24 #define octave_defun_int_h 1 26 #include "octave-config.h" 47 extern OCTINTERP_API
void 50 bool relative =
false);
52 extern OCTINTERP_API
void 55 bool relative =
false);
57 extern OCTINTERP_API
void 83 #if defined (OCTAVE_USE_DEPRECATED_FUNCTIONS) 85 OCTAVE_DEPRECATED (4.4,
"use 'octave::auto_shlib' instead")
86 typedef
octave::auto_shlib octave_auto_shlib;
88 OCTAVE_DEPRECATED (4.4, "use 'tree_evaluator::isargout'
instead")
89 extern OCTINTERP_API
bool 92 OCTAVE_DEPRECATED (4.4, "use 'tree_evaluator::isargout'
instead")
93 extern OCTINTERP_API
void 96 OCTAVE_DEPRECATED (4.4, "use '
octave::symbol_table::install_built_in_function'
instead")
97 extern OCTINTERP_API
void 99 const
std::
string&
file, const
std::
string& doc,
100 bool can_hide_function = true);
102 OCTAVE_DEPRECATED (4.4, "use '
octave::symbol_table::install_built_in_function'
instead")
103 extern OCTINTERP_API
void 105 const
std::
string&
file, const
std::
string& doc,
106 bool can_hide_function = true);
108 OCTAVE_DEPRECATED (4.4, "use '
octave::symbol_table::alias_built_in_function'
instead")
109 extern OCTINTERP_API
void 112 OCTAVE_DEPRECATED (4.4, "use '
octave::symbol_table::install_built_in_dispatch'
instead")
113 extern OCTINTERP_API
void 118 #define FORWARD_DECLARE_FUNX(name) \ 119 extern OCTAVE_EXPORT octave_value_list \ 120 name (const octave_value_list&, int) 122 #define FORWARD_DECLARE_METHODX(name) \ 123 extern OCTAVE_EXPORT octave_value_list \ 124 name (octave::interpreter&, const octave_value_list&, int) 126 #define FORWARD_DECLARE_FUN(name) \ 127 FORWARD_DECLARE_FUNX (F ## name) 129 #define FORWARD_DECLARE_METHOD(name) \ 130 FORWARD_DECLARE_METHODX (F ## name) 132 #define DECLARE_FUNX(name, args_name, nargout_name) \ 133 OCTAVE_EXPORT octave_value_list \ 134 name (const octave_value_list& args_name, int nargout_name) 136 #define DECLARE_METHODX(name, interp_name, args_name, nargout_name) \ 137 OCTAVE_EXPORT octave_value_list \ 138 name (octave::interpreter& interp_name, \ 139 const octave_value_list& args_name, int nargout_name) 141 #define DECLARE_FUN(name, args_name, nargout_name) \ 142 DECLARE_FUNX (F ## name, args_name, nargout_name) 144 #define DECLARE_METHOD(name, interp_name, args_name, nargout_name) \ 145 DECLARE_METHODX (F ## name, interp_name, args_name, nargout_name) 147 #define DECLARE_STATIC_FUNX(name, args_name, nargout_name) \ 148 static octave_value_list \ 149 name (const octave_value_list& args_name, int nargout_name) 151 #define DECLARE_STATIC_METHODX(name, interp_name, args_name, nargout_name) \ 152 static octave_value_list \ 153 name (octave::interpreter& interp_name, \ 154 const octave_value_list& args_name, int nargout_name) 156 #define DECLARE_STATIC_FUN(name, args_name, nargout_name) \ 157 DECLARE_STATIC_FUNX (F ## name, args_name, nargout_name) 159 #define DECLARE_STATIC_METHOD(name, interp_name, args_name, nargout_name) \ 160 DECLARE_STATIC_METHODX (F ## name, interp_name, args_name, nargout_name) 171 #if defined (OCTAVE_SOURCE) 172 # define DEFINE_FUN_INSTALLER_FUN(name, doc) \ 173 DEFINE_FUNX_INSTALLER_FUN(#name, F ## name, G ## name, "external-doc") 175 # define DEFINE_FUN_INSTALLER_FUN(name, doc) \ 176 DEFINE_FUNX_INSTALLER_FUN(#name, F ## name, G ## name, doc) 179 #define DEFINE_FUNX_INSTALLER_FUN(name, fname, gname, doc) \ 183 gname (const octave::dynamic_library& shl, bool relative) \ 185 check_version (OCTAVE_API_VERSION, name); \ 187 octave_dld_function *fcn \ 188 = octave_dld_function::create (fname, shl, name, doc); \ 191 fcn->mark_relative (); \
For example cd octave end example noindent changes the current working directory to file
void install_builtin_function(octave_builtin::fcn f, const std::string &name, const std::string &file, const std::string &doc, bool)
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
octave_value_list(* fcn)(const octave_value_list &, int)
bool defun_isargout(int nargout, int iout)
nd deftypefn *std::string name
OCTINTERP_API void check_version(const std::string &version, const std::string &fcn)
bool(* octave_dld_fcn_installer)(const octave::dynamic_library &, bool relative)
octave_value_list(* meth)(octave::interpreter &, const octave_value_list &, int)
auto_shlib(const dynamic_library &shl)
OCTINTERP_API void install_mex_function(void *fptr, bool fmex, const std::string &name, const octave::dynamic_library &shl, bool relative=false)
void alias_builtin(const std::string &alias, const std::string &name)
FloatComplex(* fptr)(const FloatComplex &, float, int, octave_idx_type &)
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
OCTINTERP_API void install_dld_function(octave_dld_function::fcn f, const std::string &name, const octave::dynamic_library &shl, const std::string &doc, bool relative=false)
void install_builtin_dispatch(const std::string &name, const std::string &klass)
OCTINTERP_API octave::dynamic_library get_current_shlib(void)