GNU Octave  3.8.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; \
{ \
octave_dld_function *fcn = octave_dld_function::create (fname, shl, name, doc); \
if (relative) \
fcn->mark_relative (); \
\
retval = fcn; \
} \
\
return retval; \
}

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().

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(), octave_function::name(), and print_usage().

Referenced by binary_assoc_op_defun_body(), binary_op_defun_body(), bitop(), const_value(), DEFUN(), DEFUN_DLD(), DEFUNX(), 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__dispatch__(), F__dump_symtab_info__(), F__ftp__(), F__get__(), F__go_axes_init__(), F__go_delete__(), F__go_execute_callback__(), F__go_figure__(), F__gud_mode__(), F__image_pixel_size__(), F__is_handle_visible__(), F__lin_interpn__(), F__profiler_enable__(), F__qp__(), F__request_drawnow__(), F__sort_rows_idx__(), F__varval__(), F__which__(), Fabs(), Facos(), Facosh(), Fadd_input_event_hook(), Faddlistener(), Faddpath(), Faddproperty(), Fairy(), Fangle(), Farg(), Farrayfun(), Fasin(), Fasinh(), Fatan(), Fatan2(), Fatanh(), Fatexit(), Fbalance(), Fbase64_decode(), Fbase64_encode(), Fbesselh(), Fbetainc(), Fbetaincinv(), Fbitmax(), Fbitpack(), Fbitshift(), Fbitunpack(), Fblkmm(), Fbsxfun(), Fcanonicalize_file_name(), Fcat(), Fcbrt(), Fceil(), Fcellfun(), Fcellindexmat(), Fcellslices(), Fcolloc(), 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(), Fdisp(), Fdlmread(), Fdo_string_escapes(), Fdot(), Fdrawnow(), Fdup2(), Fecho(), Feig(), Fellipj(), Fendgrent(), Fendpwent(), Ferf(), Ferfc(), Ferfcinv(), Ferfcx(), Ferfi(), Ferfinv(), Ferrno(), Ferrno_list(), Ferror(), Fexec(), Fexist(), Fexp(), Fexpm1(), Feye(), Ffclear(), Ffclose(), Ffcntl(), Ffdisp(), Ffeof(), Fferror(), Ffflush(), Ffgetl(), Ffgets(), Ffile_in_loadpath(), Ffile_in_path(), Ffilesep(), Ffilter(), Ffind(), Ffind_dir_in_path(), Ffix(), Fflintmax(), Ffloor(), Ffnmatch(), Ffopen(), Ffork(), Ffprintf(), Ffputs(), Ffread(), Ffrewind(), Ffscanf(), Ffseek(), Ffskipl(), Fftell(), Ffull(), 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(), Finput(), Fintmax(), Fintmin(), Finv(), Fis_absolute_filename(), Fis_rooted_relative_filename(), Fisalnum(), Fisalpha(), Fisascii(), Fischar(), Fiscntrl(), Fiscomplex(), Fisdebugmode(), Fisdigit(), Fisempty(), Fisfinite(), Fisfloat(), Fisgraph(), Fishandle(), Fisindex(), Fisinf(), Fisinteger(), Fislogical(), Fislower(), Fismatrix(), Fisna(), Fisnan(), Fisnumeric(), Fisprint(), Fispunct(), Fisreal(), Fissorted(), Fisspace(), Fissparse(), Fisupper(), Fisvarname(), Fisxdigit(), Fkeyboard(), Fkill(), Fkron(), Flasterr(), Flasterror(), Flastwarn(), Flength(), Flgamma(), Flink(), Flinspace(), Flist_in_columns(), Fload(), Flocaltime(), Flog(), Flog10(), Flog1p(), Flog2(), Flookup(), Flsode(), Flsode_options(), Flstat(), Flu(), Fluinc(), Fluupdate(), Fmake_absolute_filename(), Fmat2cell(), Fmatrix_type(), Fmd5sum(), Fmerge(), Fmgorth(), Fmislocked(), Fmkdir(), Fmkfifo(), Fmkstemp(), Fmktime(), Fmlock(), Fmore(), Fmunlock(), Fndims(), Fnnz(), Fnorm(), Fnproc(), Fnth_element(), Fnum2cell(), Fnum2hex(), Fnumel(), Fnzmax(), Foctave_config_info(), FOCTAVE_HOME(), FOCTAVE_VERSION(), FP_tmpdir(), Fpathsep(), Fpause(), Fpclose(), Fpinv(), Fpipe(), Fpopen(), Fpopen2(), Fprintf(), Fputenv(), 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(), Frmpath(), Fround(), Froundb(), Frows(), Frsf2csf(), FS_ISBLK(), FS_ISCHR(), FS_ISDIR(), FS_ISFIFO(), FS_ISLNK(), FS_ISREG(), FS_ISSOCK(), Fsave(), Fschur(), Fset(), Fsetgrent(), Fsetpwent(), FSIG(), Fsign(), Fsignbit(), Fsin(), Fsinh(), Fsize(), Fsizemax(), Fsleep(), Fsort(), Fspalloc(), Fsparse(), Fsprintf(), Fsqrt(), Fsqrtm(), Fsqueeze(), Fsscanf(), Fstat(), Fstr2double(), Fstrcmp(), Fstrcmpi(), Fstrfind(), Fstrftime(), Fstrncmp(), Fstrncmpi(), Fstrptime(), Fstrrep(), Fstrvcat(), Fsub2ind(), Fsum(), Fsvd(), Fsyl(), Fsymlink(), Fsystem(), Ftan(), Ftanh(), Ftilde_expand(), Ftime(), Ftmpfile(), Ftmpnam(), Ftoascii(), Ftoc(), Ftolower(), Ftoupper(), Ftypecast(), Fumask(), Funame(), Fundo_string_escapes(), Funlink(), Furlread(), Furlwrite(), Fusleep(), Fvec(), Fwaitfor(), Fwaitpid(), Fwho(), Fwhos(), Fyes_or_no(), print_usage(), 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().