GNU Octave  4.0.0
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 <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 DEFALIAS_INTERNAL(alias, name)
 
#define DEFCONSTFUN_INTERNAL(name, args_name, nargout_name, doc)   DECLARE_FUN (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 DEFUN_INTERNAL(name, args_name, nargout_name, doc)   DECLARE_FUN (name, args_name, nargout_name)
 
#define DEFUNX_INTERNAL(name, fname, args_name, nargout_name, doc)   DECLARE_FUNX (fname, args_name, nargout_name)
 

Typedefs

typedef octave_function *(* octave_dld_fcn_getter )(const octave_shlib &, bool relative)
 
typedef bool(* octave_dld_fcn_installer )(const octave_shlib &, 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_shlib 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_shlib &shl, const std::string &doc, bool relative=false)
 
OCTINTERP_API void install_mex_function (void *fptr, bool fmex, const std::string &name, const octave_shlib &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 85 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)

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

#define DEFALIAS_INTERNAL (   alias,
  name 
)

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

#define DEFCONSTFUN_INTERNAL (   name,
  args_name,
  nargout_name,
  doc 
)    DECLARE_FUN (name, args_name, nargout_name)

Definition at line 177 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 97 of file defun-int.h.

#define DEFINE_FUNX_INSTALLER_FUN (   name,
  fname,
  gname,
  doc 
)
Value:
extern "C" \
OCTAVE_EXPORT \
octave_function * \
gname (const octave_shlib& shl, bool relative) \
{ \
octave_function *retval = 0; \
\
if (! error_state) \
{ \
octave_dld_function *fcn = octave_dld_function::create (fname, shl, name, doc); \
\
if (relative) \
fcn->mark_relative (); \
\
retval = fcn; \
} \
\
return retval; \
}
#define OCTAVE_API_VERSION
Definition: version.h:43
static octave_dld_function * create(octave_builtin::fcn ff, const octave_shlib &shl, const std::string &nm=std::string(), const std::string &ds=std::string())
Definition: ov-dld-fcn.cc:85
OCTINTERP_API void check_version(const std::string &version, const std::string &fcn)
Definition: defun.cc:67
int error_state
Definition: error.cc:101

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

#define DEFUN_INTERNAL (   name,
  args_name,
  nargout_name,
  doc 
)    DECLARE_FUN (name, args_name, nargout_name)

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

#define DEFUNX_INTERNAL (   name,
  fname,
  args_name,
  nargout_name,
  doc 
)    DECLARE_FUNX (fname, args_name, nargout_name)

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

Typedef Documentation

typedef octave_function*(* octave_dld_fcn_getter)(const octave_shlib &, bool relative)

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

typedef bool(* octave_dld_fcn_installer)(const octave_shlib &, bool relative)

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

Function Documentation

OCTINTERP_API void alias_builtin ( const std::string &  alias,
const std::string &  name 
)

Definition at line 121 of file defun.cc.

References symbol_table::alias_built_in_function().

OCTINTERP_API void check_version ( const std::string &  version,
const std::string &  fcn 
)

Definition at line 67 of file defun.cc.

References error(), and OCTAVE_API_VERSION.

OCTINTERP_API bool defun_isargout ( int  ,
int   
)

Definition at line 151 of file defun.cc.

References octave_builtin::curr_lvalue_list, and max().

OCTINTERP_API void defun_isargout ( int  ,
int  ,
bool  
)

Definition at line 176 of file defun.cc.

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

OCTINTERP_API octave_shlib 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 82 of file defun.cc.

References symbol_table::install_built_in_function().

Referenced by install___init_qt___functions().

OCTINTERP_API void install_dld_function ( octave_dld_function::fcn  f,
const std::string &  name,
const octave_shlib shl,
const std::string &  doc,
bool  relative = false 
)
OCTINTERP_API void install_mex_function ( void *  fptr,
bool  fmex,
const std::string &  name,
const octave_shlib shl,
bool  relative = false 
)
OCTINTERP_API void print_usage ( void  )

Definition at line 51 of file defun.cc.

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

Referenced by binary_assoc_op_defun_body(), binary_op_defun_body(), bitop(), const_value(), do_accumarray_minmax_fun(), do_bessel(), do_cat(), do_cumminmax_body(), do_dbstack(), do_fft(), do_fft2(), do_fftn(), do_isglobal(), do_minmax_body(), do_permute(), do_trilu(), F__accumarray_sum__(), F__accumdim_sum__(), F__calc_dimensions__(), F__contourc__(), F__db_next_breakpoint_quiet__(), F__dispatch__(), F__dsearchn__(), F__dump_symtab_info__(), F__fnmatch__(), F__ftp__(), F__get__(), F__go_axes_init__(), F__go_delete__(), F__go_execute_callback__(), F__go_figure__(), F__gud_mode__(), F__ichol0__(), F__icholt__(), F__ilu0__(), F__iluc__(), F__ilutp__(), F__image_pixel_size__(), F__is_handle_visible__(), F__java_get__(), F__java_set__(), F__lin_interpn__(), F__luinc__(), F__meta_class_query__(), F__meta_get_package__(), F__open_with_system_app__(), F__parent_classes__(), F__parse_file__(), F__profiler_enable__(), F__qp__(), F__request_drawnow__(), F__sort_rows_idx__(), F__varval__(), F__version_info__(), F__which__(), F__zoom__(), Fabs(), Facos(), Facosh(), Fadd_input_event_hook(), Faddlistener(), Faddpath(), Faddproperty(), Fairy(), Fangle(), Farg(), Fargnames(), Fargv(), Farrayfun(), Fasin(), Fasinh(), Fassignin(), Fatan(), Fatan2(), Fatanh(), Fatexit(), Fautoload(), Fbalance(), Fbase64_decode(), Fbase64_encode(), Fbesselh(), Fbetainc(), Fbetaincinv(), Fbitmax(), Fbitpack(), Fbitshift(), Fbitunpack(), Fblkmm(), Fbsxfun(), Fbuiltin(), Fcanonicalize_file_name(), Fcat(), Fcbrt(), Fceil(), Fcell2struct(), Fcellfun(), Fcellindexmat(), Fcellslices(), Fcellstr(), Fclass(), Fcolloc(), Fcolon(), Fcolumns(), Fcompletion_matches(), Fcomplex(), Fconj(), Fconv2(), Fconvn(), Fcos(), Fcosh(), Fcumsum(), Fdaspk(), Fdaspk_options(), Fdasrt(), Fdasrt_options(), Fdassl(), Fdassl_options(), Fdawson(), Fdbcont(), Fdbquit(), Fdbstep(), Fdellistener(), Fdet(), Fdiag(), Fdiary(), Fdiff(), Fdir_in_loadpath(), Fdisp(), Fdlmread(), Fdo_string_escapes(), Fdot(), Fdouble(), Fdrawnow(), Fdup2(), Fecho(), Feig(), Fellipj(), Fendgrent(), Fendpwent(), Ferf(), Ferfc(), Ferfcinv(), Ferfcx(), Ferfi(), Ferfinv(), Ferrno(), Ferrno_list(), Ferror(), Feval(), Fevalin(), Fexec(), Fexist(), Fexp(), Fexpm1(), Feye(), Ffclear(), Ffcntl(), Ffdisp(), Ffeof(), Fferror(), Ffeval(), Ffgetl(), Ffgets(), Ffile_in_loadpath(), Ffile_in_path(), Ffilesep(), Ffilter(), Ffind(), Ffix(), Fflintmax(), Ffloor(), Ffopen(), Ffork(), Fformula(), Ffprintf(), Ffputs(), Ffread(), Ffrewind(), Ffscanf(), Ffskipl(), Fftell(), Ffull(), Ffunc2str(), Ffunctions(), Ffwrite(), Fgamma(), Fgammainc(), Fgcd(), Fgenpath(), Fget(), Fget_help_text(), Fget_help_text_from_file(), Fgetegid(), Fgetenv(), Fgeteuid(), Fgetgid(), Fgetgrent(), Fgetgrgid(), Fgetgrnam(), Fgethostname(), Fgetpgrp(), Fgetpid(), Fgetppid(), Fgetpwent(), Fgetpwnam(), Fgetpwuid(), Fgetuid(), Fgivens(), Fglob(), Fgmtime(), Fhess(), Fhex2num(), Fhypot(), Fignore_function_time_stamp(), Fimag(), Find2sub(), Finline(), Finput(), Fintmax(), Fintmin(), Finv(), Fis_absolute_filename(), Fis_dq_string(), Fis_function_handle(), Fis_rooted_relative_filename(), Fis_sq_string(), Fisa(), Fisalnum(), Fisalpha(), Fisargout(), Fisascii(), Fiscell(), Fiscellstr(), Fischar(), Fiscntrl(), Fiscolumn(), Fiscomplex(), Fisdebugmode(), Fisdigit(), Fisempty(), Fisfield(), Fisfinite(), Fisfloat(), Fisgraph(), Fisguirunning(), Fishandle(), Fisindex(), Fisinf(), Fisinteger(), Fisjava(), Fiskeyword(), Fislogical(), Fislower(), Fismatrix(), Fismethod(), Fisna(), Fisnan(), Fisnull(), Fisnumeric(), Fisobject(), Fisprint(), Fispunct(), Fisreal(), Fisrow(), Fisscalar(), Fissorted(), Fisspace(), Fissparse(), Fissquare(), Fisstruct(), Fisstudent(), Fisupper(), Fisvarname(), Fisvector(), Fisxdigit(), Fjava2mat(), FjavaMethod(), FjavaObject(), Fkeyboard(), Fkill(), Fkron(), Flasterr(), Flasterror(), Flastwarn(), Flength(), Flgamma(), Flink(), Flinspace(), Flist_in_columns(), Fload(), Flocaltime(), Flog(), Flog10(), Flog1p(), Flog2(), Flogical(), Flookup(), Flsode(), Flsode_options(), Flstat(), Flu(), Fluupdate(), Fmake_absolute_filename(), Fmat2cell(), Fmatrix_type(), Fmd5sum(), Fmerge(), Fmetaclass(), Fmfilename(), Fmgorth(), Fmislocked(), Fmkdir(), Fmkfifo(), Fmkstemp(), Fmktime(), Fmlock(), Fmod(), Fmore(), Fmunlock(), Fnargin(), Fnargout(), Fndims(), Fnnz(), Fnorm(), Fnproc(), Fnth_element(), Fnum2cell(), Fnum2hex(), Fnumel(), Fnumfields(), Fnzmax(), Foctave_config_info(), FOCTAVE_HOME(), FOCTAVE_VERSION(), FonCleanup(), Fordschur(), FP_tmpdir(), Fpathsep(), Fpause(), Fpclose(), Fpinv(), Fpipe(), Fpopen(), Fpopen2(), Fprintf(), Fprod(), Fprogram_invocation_name(), Fprogram_name(), Fputs(), Fquad(), Fquad_options(), Fquadcc(), Fqz(), Frandperm(), Frats(), Frcond(), Freaddir(), Freadline_re_read_init_file(), Freadline_read_init_file(), Freadlink(), Freal(), Fregexp(), Fregexpi(), Fregexprep(), Fregister_graphics_toolkit(), Frem(), Fremove_input_event_hook(), Frename(), Frepelems(), Freset(), Freshape(), Fresize(), Frethrow(), Frmdir(), Frmfield(), Frmpath(), Fround(), Froundb(), Frows(), Frpl_fclose(), Frpl_fflush(), Frpl_fseek(), Frsf2csf(), FS_ISBLK(), FS_ISCHR(), FS_ISDIR(), FS_ISFIFO(), FS_ISLNK(), FS_ISREG(), FS_ISSOCK(), Fsave(), Fschur(), Fset(), Fsetenv(), Fsetgrent(), Fsetpwent(), FSIG(), Fsign(), Fsignbit(), Fsin(), Fsingle(), Fsinh(), Fsize(), Fsizemax(), Fsizeof(), Fsleep(), Fsort(), Fsource(), Fspalloc(), Fsparse(), Fsprintf(), Fsqrt(), Fsqrtm(), Fsqueeze(), Fsscanf(), Fstat(), Fstr2double(), Fstr2func(), Fstrcmp(), Fstrcmpi(), Fstrfind(), Fstrftime(), Fstrncmp(), Fstrncmpi(), Fstrptime(), Fstrrep(), Fstruct2cell(), Fstrvcat(), Fsub2ind(), Fsubsasgn(), Fsubsref(), Fsum(), Fsvd(), Fsylvester(), Fsymlink(), Fsystem(), Ftan(), Ftanh(), Ftempname(), Ftilde_expand(), Ftime(), Ftmpfile(), Ftoascii(), Ftoc(), Ftolower(), Ftoupper(), Ftsearch(), Ftypecast(), Ftypeinfo(), Fumask(), Funame(), Fundo_string_escapes(), Funlink(), Funsetenv(), Furlread(), Furlwrite(), Fusleep(), Fvec(), Fvectorize(), Fwaitfor(), Fwaitpid(), Fwho(), Fwhos(), Fyes_or_no(), G__delaunayn__(), G__eigs__(), G__glpk__(), G__magick_finfo__(), G__magick_formats__(), G__magick_ping__(), G__magick_read__(), G__magick_write__(), G__osmesa_print__(), G__player_audioplayer__(), G__player_get_channels__(), G__player_get_fs__(), G__player_get_id__(), G__player_get_nbits__(), G__player_get_sample_number__(), G__player_get_tag__(), G__player_get_total_samples__(), G__player_get_userdata__(), G__player_isplaying__(), G__player_pause__(), G__player_play__(), G__player_playblocking__(), G__player_resume__(), G__player_set_fs__(), G__player_set_tag__(), G__player_set_userdata__(), G__player_stop__(), G__recorder_get_channels__(), G__recorder_get_fs__(), G__recorder_get_id__(), G__recorder_get_nbits__(), G__recorder_get_sample_number__(), G__recorder_get_tag__(), G__recorder_get_total_samples__(), G__recorder_get_userdata__(), G__recorder_getaudiodata__(), G__recorder_isrecording__(), G__recorder_pause__(), G__recorder_record__(), G__recorder_recordblocking__(), G__recorder_resume__(), G__recorder_set_fs__(), G__recorder_set_tag__(), G__recorder_set_userdata__(), G__recorder_stop__(), G__voronoi__(), Gamd(), Gaudioinfo(), Gaudioread(), Gaudiowrite(), Gchol(), Gchol2inv(), Gcholdelete(), Gcholinsert(), Gcholinv(), Gcholshift(), Gcholupdate(), Gcolamd(), Gconvhulln(), Gdmperm(), Getree(), Gfftw(), Gqr(), Gqrdelete(), Gqrinsert(), Gqrshift(), Gqrupdate(), Gsprank(), Gsymamd(), Gsymbfact(), Gsymrcm(), set_internal_variable(), and unary_op_defun_body().

OCTINTERP_API void print_usage ( const std::string &  )

Definition at line 61 of file defun.cc.

References feval().