GNU Octave  4.2.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Macros | Typedefs | Functions
defun-int.h File Reference
#include "octave-config.h"
#include <string>
#include "ov-builtin.h"
#include "ov-dld-fcn.h"
#include "symtab.h"
#include "version.h"
Include dependency graph for defun-int.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  octave_auto_shlib
 

Macros

#define DECLARE_FUN(name, args_name, nargout_name)   DECLARE_FUNX (F ## name, args_name, nargout_name)
 
#define DECLARE_FUNX(name, args_name, nargout_name)
 
#define DEFINE_FUN_INSTALLER_FUN(name, doc)   DEFINE_FUNX_INSTALLER_FUN(#name, F ## name, G ## name, doc)
 
#define DEFINE_FUNX_INSTALLER_FUN(name, fname, gname, doc)
 
#define FORWARD_DECLARE_FUN(name)   FORWARD_DECLARE_FUNX (F ## name)
 
#define FORWARD_DECLARE_FUNX(name)
 

Typedefs

typedef octave_function *(* octave_dld_fcn_getter )(const octave::dynamic_library &, bool relative)
 
typedef bool(* octave_dld_fcn_installer )(const octave::dynamic_library &, bool relative)
 

Functions

OCTINTERP_API void alias_builtin (const std::string &alias, const std::string &name)
 
OCTINTERP_API void check_version (const std::string &version, const std::string &fcn)
 
OCTINTERP_API bool defun_isargout (int, int)
 
OCTINTERP_API void defun_isargout (int, int, bool *)
 
OCTINTERP_API
octave::dynamic_library 
get_current_shlib (void)
 
OCTINTERP_API void install_builtin_function (octave_builtin::fcn f, const std::string &name, const std::string &file, const std::string &doc, bool can_hide_function=true)
 
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)
 
OCTINTERP_API void install_mex_function (void *fptr, bool fmex, const std::string &name, const octave::dynamic_library &shl, bool relative=false)
 
OCTINTERP_API void print_usage (void)
 
OCTINTERP_API void print_usage (const std::string &)
 

Macro Definition Documentation

#define DECLARE_FUN (   name,
  args_name,
  nargout_name 
)    DECLARE_FUNX (F ## name, args_name, nargout_name)

Definition at line 94 of file defun-int.h.

#define DECLARE_FUNX (   name,
  args_name,
  nargout_name 
)
Value:
OCTAVE_EXPORT octave_value_list \
name (const octave_value_list& args_name, int nargout_name)
OCTAVE_EXPORT octave_value_list any number nd example oindent prints the prompt xample Pick a any number!nd example oindent and waits for the user to enter a value The string entered by the user is evaluated as an so it may be a literal a variable name
Definition: input.cc:871

Definition at line 90 of file defun-int.h.

#define DEFINE_FUN_INSTALLER_FUN (   name,
  doc 
)    DEFINE_FUNX_INSTALLER_FUN(#name, F ## name, G ## name, doc)

Definition at line 110 of file defun-int.h.

#define DEFINE_FUNX_INSTALLER_FUN (   name,
  fname,
  gname,
  doc 
)
Value:
extern "C" \
OCTAVE_EXPORT \
octave_function * \
gname (const octave::dynamic_library& shl, bool relative) \
{ \
\
octave_dld_function *fcn \
if (relative) \
\
return fcn; \
}
fname
Definition: load-save.cc:754
void mark_relative(void)
Definition: ov-fcn.h:159
#define OCTAVE_API_VERSION
Definition: version.h:45
octave_function * fcn
Definition: ov-class.cc:1743
OCTAVE_EXPORT octave_value_list any number nd example oindent prints the prompt xample Pick a any number!nd example oindent and waits for the user to enter a value The string entered by the user is evaluated as an so it may be a literal a variable name
Definition: input.cc:871
OCTINTERP_API void check_version(const std::string &version, const std::string &fcn)
Definition: defun.cc:68
if(nargin< 2) print_usage()
Definition: cellfun.cc:405
static octave_dld_function * create(octave_builtin::fcn ff, const octave::dynamic_library &shl, const std::string &nm="", const std::string &ds="")
Definition: ov-dld-fcn.cc:84

Definition at line 114 of file defun-int.h.

#define FORWARD_DECLARE_FUN (   name)    FORWARD_DECLARE_FUNX (F ## name)

Definition at line 87 of file defun-int.h.

#define FORWARD_DECLARE_FUNX (   name)
Value:
extern OCTAVE_EXPORT octave_value_list \
name (const octave_value_list&, int)
OCTAVE_EXPORT octave_value_list any number nd example oindent prints the prompt xample Pick a any number!nd example oindent and waits for the user to enter a value The string entered by the user is evaluated as an so it may be a literal a variable name
Definition: input.cc:871

Definition at line 83 of file defun-int.h.

Typedef Documentation

typedef octave_function*(* octave_dld_fcn_getter)(const octave::dynamic_library &, bool relative)

Definition at line 104 of file defun-int.h.

typedef bool(* octave_dld_fcn_installer)(const octave::dynamic_library &, bool relative)

Definition at line 101 of file defun-int.h.

Function Documentation

OCTINTERP_API void alias_builtin ( const std::string alias,
const std::string name 
)
OCTINTERP_API void check_version ( const std::string version,
const std::string fcn 
)

Definition at line 68 of file defun.cc.

References error(), and OCTAVE_API_VERSION.

OCTINTERP_API bool defun_isargout ( int  ,
int   
)

Definition at line 152 of file defun.cc.

References octave_builtin::curr_lvalue_list, k, max(), and p.

OCTINTERP_API void defun_isargout ( int  ,
int  ,
bool  
)

Definition at line 177 of file defun.cc.

References octave_builtin::curr_lvalue_list, k, max(), min(), and p.

OCTINTERP_API octave::dynamic_library get_current_shlib ( void  )
OCTINTERP_API void install_builtin_function ( octave_builtin::fcn  f,
const std::string name,
const std::string file,
const std::string doc,
bool  can_hide_function = true 
)

Definition at line 83 of file defun.cc.

References fcn, and symbol_table::install_built_in_function().

Referenced by install___contourc___fcns(), install___dispatch___fcns(), install___dsearchn___fcns(), install___ichol___fcns(), install___ilu___fcns(), install___init_qt___functions(), install___lin_interpn___fcns(), install___luinc___fcns(), install___magick_read___fcns(), install___pchip_deriv___fcns(), install___qp___fcns(), install_balance_fcns(), install_besselj_fcns(), install_betainc_fcns(), install_bitfcns_fcns(), install_bsxfun_fcns(), install_cellfun_fcns(), install_colloc_fcns(), install_conv2_fcns(), install_daspk_fcns(), install_DASPK_opts_fcns(), install_dasrt_fcns(), install_DASRT_opts_fcns(), install_dassl_fcns(), install_DASSL_opts_fcns(), install_data_fcns(), install_debug_fcns(), install_defaults_fcns(), install_det_fcns(), install_dirfns_fcns(), install_dlmread_fcns(), install_dot_fcns(), install_eig_fcns(), install_ellipj_fcns(), install_error_fcns(), install_fft2_fcns(), install_fft_fcns(), install_fftn_fcns(), install_file_io_fcns(), install_filter_fcns(), install_find_fcns(), install_gammainc_fcns(), install_gcd_fcns(), install_getgrent_fcns(), install_getpwent_fcns(), install_getrusage_fcns(), install_givens_fcns(), install_graphics_fcns(), install_hash_fcns(), install_help_fcns(), install_hess_fcns(), install_hex2num_fcns(), install_input_fcns(), install_interpreter_fcns(), install_inv_fcns(), install_kron_fcns(), install_lex_fcns(), install_load_path_fcns(), install_load_save_fcns(), install_lookup_fcns(), install_ls_oct_text_fcns(), install_lsode_fcns(), install_LSODE_opts_fcns(), install_lu_fcns(), install_mappers_fcns(), install_matrix_type_fcns(), install_max_fcns(), install_mgorth_fcns(), install_nproc_fcns(), install_oct_hist_fcns(), install_oct_parse_fcns(), install_octave_fcns(), install_octave_link_fcns(), install_ordschur_fcns(), install_ov_base_fcns(), install_ov_bool_mat_fcns(), install_ov_cell_fcns(), install_ov_class_fcns(), install_ov_classdef_fcns(), install_ov_fcn_handle_fcns(), install_ov_fcn_inline_fcns(), install_ov_fcns(), install_ov_java_fcns(), install_ov_null_mat_fcns(), install_ov_oncleanup_fcns(), install_ov_range_fcns(), install_ov_struct_fcns(), install_ov_typeinfo_fcns(), install_ov_usr_fcn_fcns(), install_pager_fcns(), install_pinv_fcns(), install_pr_output_fcns(), install_profiler_fcns(), install_psi_fcns(), install_pt_arg_list_fcns(), install_pt_binop_fcns(), install_pt_eval_fcns(), install_pt_jit_fcns(), install_pt_mat_fcns(), install_quad_fcns(), install_Quad_opts_fcns(), install_quadcc_fcns(), install_qz_fcns(), install_rand_fcns(), install_rcond_fcns(), install_regexp_fcns(), install_schur_fcns(), install_sighandlers_fcns(), install_sparse_fcns(), install_spparms_fcns(), install_sqrtm_fcns(), install_str2double_fcns(), install_strfind_fcns(), install_strfns_fcns(), install_sub2ind_fcns(), install_svd_fcns(), install_sylvester_fcns(), install_symtab_fcns(), install_syscalls_fcns(), install_sysdep_fcns(), install_time_fcns(), install_toplev_fcns(), install_tril_fcns(), install_tsearch_fcns(), install_typecast_fcns(), install_urlwrite_fcns(), install_utils_fcns(), and install_variables_fcns().

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 
)
OCTINTERP_API void install_mex_function ( void *  fptr,
bool  fmex,
const std::string name,
const octave::dynamic_library shl,
bool  relative = false 
)
OCTINTERP_API void print_usage ( void  )

Definition at line 52 of file defun.cc.

References octave_call_stack::current(), error(), and octave_function::name().

Referenced by addlistener(), bitop(), cat(), DEFUN(), do_bessel(), do_fft(), do_fft2(), do_fftn(), do_isglobal(), do_minmax_body(), do_trilu(), F__contourc__(), F__dispatch__(), F__dsearchn__(), F__dump_symtab_info__(), F__ftp__(), F__get_cmdline_fcn_txt__(), F__ilu0__(), F__is_handle_visible__(), F__lin_interpn__(), F__magick_read__(), F__meta_class_query__(), F__meta_get_package__(), F__open_with_system_app__(), F__profiler_enable__(), F__qp__(), F__version_info__(), F__zoom__(), Fabs(), Facos(), Facosh(), Fangle(), Fasin(), Fasinh(), Fatan(), Fatanh(), Fbalance(), Fbetainc(), Fcbrt(), Fcolloc(), Fconv2(), Fdet(), Fdiary(), Fdouble(), Fdrawnow(), Fdup2(), Fedit_history(), Feig(), Fellipj(), Ffilter(), Ffunctions(), Ffwrite(), Fgcd(), Fgenpath(), Fget(), Fgetenv(), Fgivens(), Fhess(), Finv(), Fisfield(), Fisguirunning(), Fishandle(), Fissparse(), Fmetaclass(), Fmgorth(), Fmore(), Fnproc(), Fnumfields(), FonCleanup(), Fprogram_invocation_name(), Frats(), Frcond(), Freaddir(), Fregexp(), Fregister_graphics_toolkit(), Freset(), Frmfield(), Fschur(), Fsetenv(), FSIG(), Fsingle(), Fsizeof(), Fsqrtm(), Fsvd(), G__delaunayn__(), G__eigs__(), G__glpk__(), G__osmesa_print__(), G__voronoi__(), Gamd(), Gaudiodevinfo(), Gaudioread(), Gccolamd(), Gchol(), Gcolamd(), Gconvhulln(), Gdmperm(), Gfftw(), Gqr(), Gsymbfact(), Gsymrcm(), hex2num(), if(), name(), parse_dbfunction_params(), pattern(), sparse(), subsref(), and octave::xzip().

OCTINTERP_API void print_usage ( const std::string )

Definition at line 62 of file defun.cc.

References feval().