GNU Octave  9.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
octave_user_function Class Reference

#include "ov-usr-fcn.h"

Inheritance diagram for octave_user_function:
octave_user_code octave_function octave_base_value

Public Member Functions

 octave_user_function (const octave::symbol_scope &scope=octave::symbol_scope::anonymous(), octave::tree_parameter_list *pl=nullptr, octave::tree_parameter_list *rl=nullptr, octave::tree_statement_list *cl=nullptr)
 
 ~octave_user_function ()
 
void accept (octave::tree_walker &tw)
 
octave_value_list all_va_args (const octave_value_list &args)
 
int beginning_column () const
 
int beginning_line () const
 
octave_value_list call (octave::tree_evaluator &tw, int nargout=0, const octave_value_list &args=octave_value_list())
 
std::string class_name () const
 
octave_user_functiondefine_param_list (octave::tree_parameter_list *t)
 
octave_user_functiondefine_ret_list (octave::tree_parameter_list *t)
 
octave_value dump () const
 
int ending_column () const
 
int ending_line () const
 
void erase_subfunctions ()
 
octave_value_list execute (octave::tree_evaluator &tw, int nargout=0, const octave_value_list &args=octave_value_list())
 
octave_value find_subfunction (const std::string &subfuns) const
 
octave_functionfunction_value (bool=false)
 
bool has_subfunctions () const
 
bool is_anonymous_function () const
 
bool is_anonymous_function_of_class (const std::string &cname="") const
 
bool is_classdef_constructor (const std::string &cname="") const
 
bool is_classdef_method (const std::string &cname="") const
 
bool is_inline_function () const
 
bool is_legacy_constructor (const std::string &cname="") const
 
bool is_legacy_method (const std::string &cname="") const
 
bool is_nested_function () const
 
bool is_parent_function () const
 
bool is_special_expr () const
 
bool is_subfunction () const
 
bool is_system_fcn_file () const
 
bool is_user_function () const
 
octave::comment_list * leading_comment ()
 
void lock_subfunctions ()
 
void mark_as_anonymous_function ()
 
void mark_as_classdef_constructor ()
 
void mark_as_classdef_method ()
 
void mark_as_inline_function ()
 
void mark_as_legacy_constructor ()
 
void mark_as_legacy_method ()
 
void mark_as_nested_function ()
 
void mark_as_private_function (const std::string &cname="")
 
void mark_as_subfunction ()
 
void mark_as_system_fcn_file ()
 
void maybe_relocate_end ()
 
octave::tree_parameter_list * parameter_list ()
 
std::string parent_fcn_name () const
 
std::list< std::string > parent_fcn_names () const
 
octave::symbol_scope parent_fcn_scope () const
 
std::string profiler_name () const
 
void restore_warning_states ()
 
octave::tree_parameter_list * return_list ()
 
octave::tree_expression * special_expr ()
 
void stash_fcn_end_location (int line, int col)
 
void stash_fcn_location (int line, int col)
 
void stash_function_name (const std::string &s)
 
void stash_leading_comment (octave::comment_list *lc)
 
void stash_parent_fcn_scope (const octave::symbol_scope &ps)
 
void stash_subfunction_names (const std::list< std::string > &names)
 
void stash_trailing_comment (octave::comment_list *tc)
 
std::list< std::string > subfunction_names () const
 
std::map< std::string, octave_valuesubfunctions () const
 
bool subsasgn_optimization_ok ()
 
bool takes_var_return () const
 
bool takes_varargs () const
 
octave::comment_list * trailing_comment ()
 
int type_id () const
 
std::string type_name () const
 
void unlock_subfunctions ()
 
octave_user_codeuser_code_value (bool=false)
 
octave_user_functionuser_function_value (bool=false)
 
- Public Member Functions inherited from octave_user_code
 ~octave_user_code ()
 
octave::tree_statement_list * body ()
 
void cache_function_text (const std::string &text, const octave::sys::time &timestamp)
 
std::string fcn_file_name () const
 
std::string get_code_line (std::size_t line)
 
std::deque< std::string > get_code_lines (std::size_t line, std::size_t num_lines)
 
bool is_user_code () const
 
void mark_fcn_file_up_to_date (const octave::sys::time &t)
 
octave::symbol_scope scope ()
 
std::size_t scope_num_symbols ()
 
void stash_fcn_file_name (const std::string &nm)
 
void stash_fcn_file_time (const octave::sys::time &t)
 
octave::sys::time time_checked () const
 
octave::sys::time time_parsed () const
 
- Public Member Functions inherited from octave_function
 octave_function ()
 
 ~octave_function ()=default
 
virtual bool accepts_postfix_index (char type) const
 
virtual int call_depth () const
 
std::string canonical_name () const
 
octave_base_valueclone () const
 
std::string dir_name () const
 
std::string dispatch_class () const
 
virtual std::string doc_string (const std::string &="") const
 
void document (const std::string &ds)
 
octave_base_valueempty_clone () const
 
virtual bool handles_dispatch_class (const std::string &) const
 
bool is_class_constructor (const std::string &cname="") const
 
bool is_class_method (const std::string &cname="") const
 
virtual bool is_compiled () const
 
bool is_defined () const
 
bool is_function () const
 
bool is_private_function () const
 
bool is_private_function_of_class (const std::string &nm) const
 
bool is_relative () const
 
bool islocked () const
 
void lock ()
 
void mark_relative ()
 
std::string name () const
 
std::string package_name () const
 
virtual void push_dispatch_class (const std::string &)
 
virtual std::string src_file_name () const
 
void stash_dir_name (const std::string &dir)
 
void stash_dispatch_class (const std::string &nm)
 
void stash_package_name (const std::string &pack)
 
virtual void unload ()
 
void unlock ()
 
- Public Member Functions inherited from octave_base_value
 octave_base_value ()
 
 octave_base_value (const octave_base_value &)
 
virtual ~octave_base_value ()=default
 
virtual octave_value all (int=0) const
 
virtual octave_value any (int=0) const
 
virtual NDArray array_value (bool=false) const
 
virtual octave_value as_double () const
 
virtual octave_value as_double_or_copy ()
 
virtual octave_value as_int16 () const
 
virtual octave_value as_int32 () const
 
virtual octave_value as_int64 () const
 
virtual octave_value as_int8 () const
 
virtual mxArrayas_mxArray (bool interleaved) const
 
virtual octave_value as_single () const
 
virtual octave_value as_uint16 () const
 
virtual octave_value as_uint32 () const
 
virtual octave_value as_uint64 () const
 
virtual octave_value as_uint8 () const
 
virtual void assign (const std::string &, const octave_value &)
 
virtual boolNDArray bool_array_value (bool=false) const
 
virtual boolMatrix bool_matrix_value (bool=false) const
 
virtual bool bool_value (bool=false) const
 
virtual void break_closure_cycles (const std::shared_ptr< octave::stack_frame > &)
 
virtual builtin_type_t builtin_type () const
 
virtual std::size_t byte_size () const
 
virtual void call_object_destructor ()
 
virtual Cell cell_value () const
 
virtual Array< std::string > cellstr_value () const
 
virtual charNDArray char_array_value (bool=false) const
 
virtual charMatrix char_matrix_value (bool force=false) const
 
virtual octave_classdefclassdef_object_value (bool silent=false)
 
octave_idx_type columns () const
 
virtual ComplexNDArray complex_array_value (bool=false) const
 
virtual ComplexDiagMatrix complex_diag_matrix_value (bool=false) const
 
virtual ComplexMatrix complex_matrix_value (bool=false) const
 
virtual Complex complex_value (bool=false) const
 
virtual void convert_to_row_or_column_vector ()
 
virtual octave_value convert_to_str (bool pad=false, bool force=false, char type='\'') const
 
virtual octave_value convert_to_str_internal (bool pad, bool force, char type) const
 
virtual octave_value diag (octave_idx_type k=0) const
 
virtual octave_value diag (octave_idx_type m, octave_idx_type n) const
 
virtual DiagMatrix diag_matrix_value (bool=false) const
 
virtual dim_vector dims () const
 
virtual octave_value do_index_op (const octave_value_list &idx, bool resize_ok=false)
 
virtual double double_value (bool=false) const
 
virtual std::string edit_display (const float_display_format &, octave_idx_type, octave_idx_type) const
 
virtual octave_value fast_elem_extract (octave_idx_type n) const
 
virtual bool fast_elem_insert (octave_idx_type n, const octave_value &x)
 
virtual bool fast_elem_insert_self (void *where, builtin_type_t btyp) const
 
virtual octave_fcn_handlefcn_handle_value (bool silent=false)
 
virtual octave_base_valuefind_parent_class (const std::string &)
 
virtual FloatNDArray float_array_value (bool=false) const
 
virtual FloatComplexNDArray float_complex_array_value (bool=false) const
 
virtual FloatComplexDiagMatrix float_complex_diag_matrix_value (bool=false) const
 
virtual FloatComplexMatrix float_complex_matrix_value (bool=false) const
 
virtual FloatComplex float_complex_value (bool=false) const
 
virtual FloatDiagMatrix float_diag_matrix_value (bool=false) const
 
virtual FloatMatrix float_matrix_value (bool=false) const
 
virtual float float_scalar_value (bool frc_str_conv=false) const
 
virtual float float_value (bool=false) const
 
virtual octave_value full_value () const
 
virtual octave_functionget_cached_fcn (const octave_value_list &)
 
virtual octave_functionget_cached_fcn (void *, void *)
 
virtual float_display_format get_edit_display_format () const
 
virtual bool has_function_cache () const
 
virtual octave::idx_vector index_vector (bool require_integers=false) const
 
virtual int16NDArray int16_array_value () const
 
virtual octave_int16 int16_scalar_value () const
 
virtual int32NDArray int32_array_value () const
 
virtual octave_int32 int32_scalar_value () const
 
virtual int64NDArray int64_array_value () const
 
virtual octave_int64 int64_scalar_value () const
 
virtual int64_t int64_value (bool=false, bool=false) const
 
virtual int8NDArray int8_array_value () const
 
virtual octave_int8 int8_scalar_value () const
 
virtual int int_value (bool=false, bool=false) const
 
virtual bool is_all_va_args () const
 
virtual bool is_bool_matrix () const
 
virtual bool is_bool_scalar () const
 
virtual bool is_builtin_function () const
 
virtual bool is_char_matrix () const
 
virtual bool is_classdef_meta () const
 
virtual bool is_classdef_object () const
 
virtual bool is_classdef_superclass_ref () const
 
virtual bool is_complex_matrix () const
 
virtual bool is_complex_scalar () const
 
virtual bool is_constant () const
 
virtual bool is_cs_list () const
 
virtual bool is_diag_matrix () const
 
virtual bool is_dld_function () const
 
virtual bool is_double_type () const
 
virtual bool is_full_num_matrix () const
 
virtual bool is_function_cache () const
 
virtual bool is_function_handle () const
 
virtual bool is_instance_of (const std::string &) const
 
virtual bool is_int16_type () const
 
virtual bool is_int32_type () const
 
virtual bool is_int64_type () const
 
virtual bool is_int8_type () const
 
virtual bool is_legacy_object () const
 
virtual bool is_magic_colon () const
 
virtual bool is_magic_int () const
 
virtual bool is_matrix_type () const
 
virtual bool is_maybe_function () const
 
virtual bool is_mex_function () const
 
virtual bool is_package () const
 
virtual bool is_perm_matrix () const
 
virtual bool is_range () const
 
virtual bool is_real_matrix () const
 
virtual bool is_real_scalar () const
 
virtual bool is_scalar_type () const
 
virtual bool is_single_type () const
 
virtual sortmode is_sorted_rows (sortmode mode=UNSORTED) const
 
virtual bool is_sq_string () const
 
virtual bool is_storable () const
 
virtual bool is_string () const
 
virtual bool is_true () const
 
virtual bool is_uint16_type () const
 
virtual bool is_uint32_type () const
 
virtual bool is_uint64_type () const
 
virtual bool is_uint8_type () const
 
virtual bool is_user_script () const
 
bool is_zero_by_zero () const
 
virtual bool iscell () const
 
virtual bool iscellstr () const
 
virtual bool iscomplex () const
 
bool isempty () const
 
virtual bool isfield (const std::string &) const
 
virtual bool isfloat () const
 
virtual bool isinteger () const
 
virtual bool isjava () const
 
virtual bool islogical () const
 
virtual bool isnull () const
 
virtual bool isnumeric () const
 
virtual bool isobject () const
 
virtual bool isreal () const
 
virtual sortmode issorted (sortmode mode=UNSORTED) const
 
virtual bool issparse () const
 
virtual bool isstruct () const
 
virtual octave_value_list list_value () const
 
virtual bool load_ascii (std::istream &is)
 
virtual bool load_binary (std::istream &is, bool swap, octave::mach_info::float_format fmt)
 
virtual bool load_hdf5 (octave_hdf5_id loc_id, const char *name)
 
virtual long int long_value (bool=false, bool=false) const
 
virtual octave_base_valuemake_storable_value ()
 
virtual octave_value map (unary_mapper_t) const
 
virtual string_vector map_keys () const
 
virtual octave_map map_value () const
 
virtual MatrixType matrix_type () const
 
virtual MatrixType matrix_type (const MatrixType &typ) const
 
virtual Matrix matrix_value (bool=false) const
 
virtual void maybe_call_dtor ()
 
virtual void maybe_economize ()
 
virtual const void * mex_get_data () const
 
virtual const octave_idx_typemex_get_ir () const
 
virtual const octave_idx_typemex_get_jc () const
 
virtual int ndims () const
 
virtual octave_idx_type nfields () const
 
virtual int nint_value (bool=false) const
 
virtual octave_idx_type nnz () const
 
virtual std::size_t nparents () const
 
virtual octave_idx_type numel () const
 
virtual type_conv_info numeric_conversion_function () const
 
virtual type_conv_info numeric_demotion_function () const
 
virtual octave_idx_type nzmax () const
 
virtual std::list< std::string > parent_class_name_list () const
 
virtual string_vector parent_class_names () const
 
virtual PermMatrix perm_matrix_value () const
 
virtual octave_value permute (const Array< int > &vec, bool=false) const
 
virtual void print (std::ostream &os, bool pr_as_read_syntax=false)
 
virtual bool print_as_scalar () const
 
virtual void print_info (std::ostream &os, const std::string &prefix) const
 
virtual bool print_name_tag (std::ostream &os, const std::string &name) const
 
virtual void print_raw (std::ostream &os, bool pr_as_read_syntax=false) const
 
virtual void print_with_name (std::ostream &output_buf, const std::string &name, bool print_padding=true)
 
virtual octave::range< double > range_value () const
 
virtual octave_value reshape (const dim_vector &) const
 
virtual octave_value resize (const dim_vector &, bool fill=false) const
 
octave_idx_type rows () const
 
virtual bool save_ascii (std::ostream &os)
 
virtual bool save_binary (std::ostream &os, bool save_as_floats)
 
virtual bool save_hdf5 (octave_hdf5_id loc_id, const char *name, bool save_as_floats)
 
virtual octave_scalar_map scalar_map_value () const
 
virtual double scalar_value (bool frc_str_conv=false) const
 
virtual void short_disp (std::ostream &os) const
 
virtual short int short_value (bool=false, bool=false) const
 
virtual octave_value simple_subsasgn (char type, octave_value_list &idx, const octave_value &rhs)
 
virtual octave_value_list simple_subsref (char type, octave_value_list &idx, int nargout)
 
virtual Matrix size ()
 
virtual octave_value sort (Array< octave_idx_type > &sidx, octave_idx_type dim=0, sortmode mode=ASCENDING) const
 
virtual octave_value sort (octave_idx_type dim=0, sortmode mode=ASCENDING) const
 
virtual Array< octave_idx_typesort_rows_idx (sortmode mode=ASCENDING) const
 
virtual SparseBoolMatrix sparse_bool_matrix_value (bool=false) const
 
virtual SparseComplexMatrix sparse_complex_matrix_value (bool=false) const
 
virtual SparseMatrix sparse_matrix_value (bool=false) const
 
virtual octave_value squeeze () const
 
virtual octave_value storable_value ()
 
virtual std::string string_value (bool force=false) const
 
virtual string_vector string_vector_value (bool pad=false) const
 
virtual octave_value subsasgn (const std::string &type, const std::list< octave_value_list > &idx, const octave_value &rhs)
 
virtual octave_value subsref (const std::string &type, const std::list< octave_value_list > &idx)
 
virtual octave_value subsref (const std::string &type, const std::list< octave_value_list > &idx, bool auto_add)
 
virtual octave_value_list subsref (const std::string &type, const std::list< octave_value_list > &idx, int nargout)
 
virtual octave_base_valuetry_narrowing_conversion ()
 
virtual uint16NDArray uint16_array_value () const
 
virtual octave_uint16 uint16_scalar_value () const
 
virtual uint32NDArray uint32_array_value () const
 
virtual octave_uint32 uint32_scalar_value () const
 
virtual uint64NDArray uint64_array_value () const
 
virtual octave_uint64 uint64_scalar_value () const
 
virtual uint64_t uint64_value (bool=false, bool=false) const
 
virtual uint8NDArray uint8_array_value () const
 
virtual octave_uint8 uint8_scalar_value () const
 
virtual unsigned int uint_value (bool=false, bool=false) const
 
virtual unsigned long int ulong_value (bool=false, bool=false) const
 
virtual octave_value undef_subsasgn (const std::string &type, const std::list< octave_value_list > &idx, const octave_value &rhs)
 
virtual octave_base_valueunique_clone ()
 
virtual octave_base_valueunique_parent_class (const std::string &)
 
virtual octave_user_scriptuser_script_value (bool silent=false)
 
virtual unsigned short int ushort_value (bool=false, bool=false) const
 
virtual int write (octave::stream &os, int block_size, oct_data_conv::data_type output_type, int skip, octave::mach_info::float_format flt_fmt) const
 
virtual octave_idx_type xnumel (const octave_value_list &)
 
virtual std::string xstring_value () const
 

Static Public Member Functions

static void register_type ()
 
static void register_type (octave::type_info &)
 
static std::string static_class_name ()
 
static int static_type_id ()
 
static std::string static_type_name ()
 
- Static Public Member Functions inherited from octave_base_value
static void register_type ()
 
static void register_type (octave::type_info &)
 
static std::string static_class_name ()
 
static int static_type_id ()
 
static std::string static_type_name ()
 

Additional Inherited Members

- Public Types inherited from octave_base_value
typedef octave_base_value *(* type_conv_fcn) (const octave_base_value &)
 
enum  unary_mapper_t {
  umap_abs , umap_acos , umap_acosh , umap_angle ,
  umap_arg , umap_asin , umap_asinh , umap_atan ,
  umap_atanh , umap_cbrt , umap_ceil , umap_conj ,
  umap_cos , umap_cosh , umap_erf , umap_erfinv ,
  umap_erfcinv , umap_erfc , umap_erfcx , umap_erfi ,
  umap_dawson , umap_exp , umap_expm1 , umap_isfinite ,
  umap_fix , umap_floor , umap_gamma , umap_imag ,
  umap_isinf , umap_isna , umap_isnan , umap_lgamma ,
  umap_log , umap_log2 , umap_log10 , umap_log1p ,
  umap_real , umap_round , umap_roundb , umap_signum ,
  umap_sin , umap_sinh , umap_sqrt , umap_tan ,
  umap_tanh , umap_xisalnum , umap_xisalpha , umap_xisascii ,
  umap_xiscntrl , umap_xisdigit , umap_xisgraph , umap_xislower ,
  umap_xisprint , umap_xispunct , umap_xisspace , umap_xisupper ,
  umap_xisxdigit , umap_xsignbit , umap_xtolower , umap_xtoupper ,
  umap_unknown , num_unary_mappers = umap_unknown
}
 
- Protected Member Functions inherited from octave_user_code
 octave_user_code (const std::string &fnm="", const std::string &nm="", const octave::symbol_scope &scope=octave::symbol_scope::anonymous(), octave::tree_statement_list *cmds=nullptr, const std::string &ds="")
 
void get_file_info ()
 
- Protected Member Functions inherited from octave_function
 octave_function (const std::string &nm, const std::string &ds="")
 
- Protected Member Functions inherited from octave_base_value
int current_print_indent_level () const
 
void decrement_indent_level () const
 
void increment_indent_level () const
 
void indent (std::ostream &os) const
 
void newline (std::ostream &os) const
 
octave_value numeric_assign (const std::string &type, const std::list< octave_value_list > &idx, const octave_value &rhs)
 
void reset () const
 
void reset_indent_level () const
 
void warn_load (const char *type) const
 
void warn_save (const char *type) const
 
- Static Protected Member Functions inherited from octave_base_value
static const char * get_umap_name (unary_mapper_t)
 
- Protected Attributes inherited from octave_user_code
octave::tree_statement_list * m_cmd_list
 
octave::file_info * m_file_info
 
std::string m_file_name
 
octave::symbol_scope m_scope
 
octave::sys::time m_t_checked
 
octave::sys::time m_t_parsed
 
- Protected Attributes inherited from octave_function
std::string m_dir_name
 
std::string m_dispatch_class
 
std::string m_doc
 
bool m_locked
 
std::string m_name
 
std::string m_package_name
 
bool m_private
 
bool m_relative
 
- Protected Attributes inherited from octave_base_value
octave::refcount< octave_idx_type > & count
 
octave::refcount< octave_idx_typem_count
 

Detailed Description

Definition at line 202 of file ov-usr-fcn.h.

Constructor & Destructor Documentation

◆ octave_user_function()

octave_user_function::octave_user_function ( const octave::symbol_scope &  scope = octave::symbol_scope::anonymous (),
octave::tree_parameter_list *  pl = nullptr,
octave::tree_parameter_list *  rl = nullptr,
octave::tree_statement_list *  cl = nullptr 
)

Definition at line 213 of file ov-usr-fcn.cc.

References octave_user_code::m_cmd_list.

◆ ~octave_user_function()

octave_user_function::~octave_user_function ( )

Definition at line 230 of file ov-usr-fcn.cc.

Member Function Documentation

◆ accept()

void octave_user_function::accept ( octave::tree_walker &  tw)
virtual

Reimplemented from octave_function.

Definition at line 498 of file ov-usr-fcn.cc.

Referenced by tree_walker::visit_classdef_methods_list().

◆ all_va_args()

octave_value_list octave_user_function::all_va_args ( const octave_value_list args)

Definition at line 462 of file ov-usr-fcn.cc.

References octave_value_list::length(), n, and octave_value_list::slice().

◆ beginning_column()

int octave_user_function::beginning_column ( ) const
inline

Definition at line 233 of file ov-usr-fcn.h.

Referenced by base_parser::finish_classdef_external_method().

◆ beginning_line()

int octave_user_function::beginning_line ( ) const
inline

Definition at line 232 of file ov-usr-fcn.h.

Referenced by base_parser::finish_classdef_external_method().

◆ call()

octave_value_list octave_user_function::call ( octave::tree_evaluator &  tw,
int  nargout = 0,
const octave_value_list args = octave_value_list () 
)
virtual

Reimplemented from octave_function.

Definition at line 480 of file ov-usr-fcn.cc.

References execute().

◆ class_name()

std::string octave_user_function::class_name ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 470 of file ov-usr-fcn.h.

◆ define_param_list()

octave_user_function* octave_user_function::define_param_list ( octave::tree_parameter_list *  t)

◆ define_ret_list()

octave_user_function * octave_user_function::define_ret_list ( octave::tree_parameter_list *  t)

◆ dump()

octave_value octave_user_function::dump ( ) const
virtual

Reimplemented from octave_user_code.

Definition at line 585 of file ov-usr-fcn.cc.

References octave_user_code::dump(), m, and octave_base_value::octave_value.

◆ ending_column()

int octave_user_function::ending_column ( ) const
inline

Definition at line 242 of file ov-usr-fcn.h.

◆ ending_line()

int octave_user_function::ending_line ( ) const
inline

Definition at line 241 of file ov-usr-fcn.h.

◆ erase_subfunctions()

void octave_user_function::erase_subfunctions ( )
virtual

Reimplemented from octave_base_value.

Definition at line 369 of file ov-usr-fcn.cc.

References octave_user_code::m_scope.

◆ execute()

octave_value_list octave_user_function::execute ( octave::tree_evaluator &  tw,
int  nargout = 0,
const octave_value_list args = octave_value_list () 
)
virtual

Implements octave_function.

Definition at line 491 of file ov-usr-fcn.cc.

Referenced by call().

◆ find_subfunction()

octave_value octave_user_function::find_subfunction ( const std::string &  subfuns) const
virtual

Reimplemented from octave_user_code.

Definition at line 417 of file ov-usr-fcn.cc.

References find_subfunction(), octave_user_code::m_scope, and octave_value::user_function_value().

Referenced by find_subfunction().

◆ function_value()

octave_function* octave_user_function::function_value ( bool  = false)
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 216 of file ov-usr-fcn.h.

◆ has_subfunctions()

bool octave_user_function::has_subfunctions ( ) const
virtual

Reimplemented from octave_function.

Definition at line 444 of file ov-usr-fcn.cc.

References octave_user_code::m_scope.

◆ is_anonymous_function()

bool octave_user_function::is_anonymous_function ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 313 of file ov-usr-fcn.h.

Referenced by profiler_name().

◆ is_anonymous_function_of_class()

bool octave_user_function::is_anonymous_function_of_class ( const std::string &  cname = "") const
inlinevirtual

Reimplemented from octave_function.

Definition at line 315 of file ov-usr-fcn.h.

◆ is_classdef_constructor()

bool octave_user_function::is_classdef_constructor ( const std::string &  cname = "") const
inlinevirtual

Reimplemented from octave_function.

Definition at line 349 of file ov-usr-fcn.h.

Referenced by profiler_name().

◆ is_classdef_method()

bool octave_user_function::is_classdef_method ( const std::string &  cname = "") const
inlinevirtual

Reimplemented from octave_function.

Definition at line 365 of file ov-usr-fcn.h.

◆ is_inline_function()

bool octave_user_function::is_inline_function ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 309 of file ov-usr-fcn.h.

Referenced by profiler_name().

◆ is_legacy_constructor()

bool octave_user_function::is_legacy_constructor ( const std::string &  cname = "") const
inlinevirtual

Reimplemented from octave_function.

Definition at line 341 of file ov-usr-fcn.h.

◆ is_legacy_method()

bool octave_user_function::is_legacy_method ( const std::string &  cname = "") const
inlinevirtual

Reimplemented from octave_function.

Definition at line 357 of file ov-usr-fcn.h.

◆ is_nested_function()

bool octave_user_function::is_nested_function ( ) const
inlinevirtual

Reimplemented from octave_function.

Definition at line 335 of file ov-usr-fcn.h.

◆ is_parent_function()

bool octave_user_function::is_parent_function ( ) const
inlinevirtual

Reimplemented from octave_function.

Definition at line 337 of file ov-usr-fcn.h.

◆ is_special_expr()

bool octave_user_function::is_special_expr ( ) const
inline

Definition at line 328 of file ov-usr-fcn.h.

Referenced by special_expr().

◆ is_subfunction()

bool octave_user_function::is_subfunction ( ) const
inlinevirtual

Reimplemented from octave_function.

Definition at line 305 of file ov-usr-fcn.h.

Referenced by profiler_name().

◆ is_system_fcn_file()

bool octave_user_function::is_system_fcn_file ( ) const
inlinevirtual

Reimplemented from octave_function.

Definition at line 273 of file ov-usr-fcn.h.

◆ is_user_function()

bool octave_user_function::is_user_function ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 275 of file ov-usr-fcn.h.

◆ leading_comment()

octave::comment_list* octave_user_function::leading_comment ( )
inline

Definition at line 388 of file ov-usr-fcn.h.

Referenced by tree_print_code::visit_octave_user_function_header().

◆ lock_subfunctions()

void octave_user_function::lock_subfunctions ( )
virtual

Reimplemented from octave_function.

Definition at line 395 of file ov-usr-fcn.cc.

References octave_user_code::m_scope.

◆ mark_as_anonymous_function()

void octave_user_function::mark_as_anonymous_function ( )
inline

Definition at line 311 of file ov-usr-fcn.h.

Referenced by tree_evaluator::evaluate_anon_fcn_handle().

◆ mark_as_classdef_constructor()

void octave_user_function::mark_as_classdef_constructor ( )
inline

Definition at line 347 of file ov-usr-fcn.h.

Referenced by make_function_of_class(), and base_parser::start_function().

◆ mark_as_classdef_method()

void octave_user_function::mark_as_classdef_method ( )
inline

Definition at line 363 of file ov-usr-fcn.h.

Referenced by make_function_of_class(), and base_parser::start_function().

◆ mark_as_inline_function()

void octave_user_function::mark_as_inline_function ( )
inline

Definition at line 307 of file ov-usr-fcn.h.

◆ mark_as_legacy_constructor()

void octave_user_function::mark_as_legacy_constructor ( )
inline

Definition at line 339 of file ov-usr-fcn.h.

Referenced by base_parser::start_function().

◆ mark_as_legacy_method()

void octave_user_function::mark_as_legacy_method ( )
inline

Definition at line 355 of file ov-usr-fcn.h.

Referenced by base_parser::start_function().

◆ mark_as_nested_function()

void octave_user_function::mark_as_nested_function ( )
inline

◆ mark_as_private_function()

void octave_user_function::mark_as_private_function ( const std::string &  cname = "")
virtual

Reimplemented from octave_function.

Definition at line 387 of file ov-usr-fcn.cc.

References octave_user_code::m_scope, and octave_function::mark_as_private_function().

◆ mark_as_subfunction()

void octave_user_function::mark_as_subfunction ( )
inline

Definition at line 303 of file ov-usr-fcn.h.

Referenced by base_parser::finish_function().

◆ mark_as_system_fcn_file()

void octave_user_function::mark_as_system_fcn_file ( )

◆ maybe_relocate_end()

void octave_user_function::maybe_relocate_end ( )
virtual

Reimplemented from octave_function.

Definition at line 291 of file ov-usr-fcn.cc.

References f, and subfunctions().

◆ parameter_list()

octave::tree_parameter_list* octave_user_function::parameter_list ( )
inline

◆ parent_fcn_name()

std::string octave_user_function::parent_fcn_name ( ) const
inlinevirtual

Reimplemented from octave_function.

Definition at line 254 of file ov-usr-fcn.h.

Referenced by profiler_name().

◆ parent_fcn_names()

std::list<std::string> octave_user_function::parent_fcn_names ( ) const
inlinevirtual

Reimplemented from octave_function.

Definition at line 266 of file ov-usr-fcn.h.

◆ parent_fcn_scope()

octave::symbol_scope octave_user_function::parent_fcn_scope ( ) const
inlinevirtual

Reimplemented from octave_function.

Definition at line 261 of file ov-usr-fcn.h.

◆ profiler_name()

◆ register_type() [1/2]

void octave_user_function::register_type ( )
static

Definition at line 208 of file ov-usr-fcn.cc.

◆ register_type() [2/2]

void octave_user_function::register_type ( octave::type_info &  ti)
static

Definition at line 208 of file ov-usr-fcn.cc.

◆ restore_warning_states()

void octave_user_function::restore_warning_states ( )

◆ return_list()

octave::tree_parameter_list* octave_user_function::return_list ( )
inline

Definition at line 386 of file ov-usr-fcn.h.

Referenced by Fnargout(), and tree_print_code::visit_octave_user_function_header().

◆ special_expr()

octave::tree_expression * octave_user_function::special_expr ( )

Definition at line 504 of file ov-usr-fcn.cc.

References is_special_expr(), octave_user_code::m_cmd_list, panic_if, and panic_unless.

◆ stash_fcn_end_location()

void octave_user_function::stash_fcn_end_location ( int  line,
int  col 
)
inline

Definition at line 235 of file ov-usr-fcn.h.

Referenced by base_parser::start_function().

◆ stash_fcn_location()

void octave_user_function::stash_fcn_location ( int  line,
int  col 
)
inline

◆ stash_function_name()

void octave_user_function::stash_function_name ( const std::string &  s)
inline

◆ stash_leading_comment()

void octave_user_function::stash_leading_comment ( octave::comment_list *  lc)
inline

◆ stash_parent_fcn_scope()

void octave_user_function::stash_parent_fcn_scope ( const octave::symbol_scope &  ps)

Definition at line 310 of file ov-usr-fcn.cc.

References octave_user_code::m_scope.

◆ stash_subfunction_names()

void octave_user_function::stash_subfunction_names ( const std::list< std::string > &  names)
virtual

Reimplemented from octave_function.

Definition at line 450 of file ov-usr-fcn.cc.

References octave_user_code::m_scope.

◆ stash_trailing_comment()

void octave_user_function::stash_trailing_comment ( octave::comment_list *  tc)
inline

Definition at line 250 of file ov-usr-fcn.h.

Referenced by base_parser::start_function().

◆ static_class_name()

static std::string octave_user_function::static_class_name ( )
inlinestatic

Definition at line 470 of file ov-usr-fcn.h.

◆ static_type_id()

static int octave_user_function::static_type_id ( )
inlinestatic

Definition at line 470 of file ov-usr-fcn.h.

◆ static_type_name()

static std::string octave_user_function::static_type_name ( )
inlinestatic

Definition at line 470 of file ov-usr-fcn.h.

◆ subfunction_names()

std::list< std::string > octave_user_function::subfunction_names ( ) const
virtual

Reimplemented from octave_function.

Definition at line 456 of file ov-usr-fcn.cc.

References octave_user_code::m_scope.

◆ subfunctions()

std::map< std::string, octave_value > octave_user_function::subfunctions ( ) const
virtual

Reimplemented from octave_user_code.

Definition at line 407 of file ov-usr-fcn.cc.

References octave_user_code::m_scope.

Referenced by maybe_relocate_end().

◆ subsasgn_optimization_ok()

bool octave_user_function::subsasgn_optimization_ok ( )

Definition at line 514 of file ov-usr-fcn.cc.

◆ takes_var_return()

bool octave_user_function::takes_var_return ( ) const
virtual

Reimplemented from octave_function.

Definition at line 381 of file ov-usr-fcn.cc.

Referenced by Fnargout().

◆ takes_varargs()

bool octave_user_function::takes_varargs ( ) const
virtual

Reimplemented from octave_function.

Definition at line 375 of file ov-usr-fcn.cc.

Referenced by Fnargin().

◆ trailing_comment()

octave::comment_list* octave_user_function::trailing_comment ( )
inline

Definition at line 390 of file ov-usr-fcn.h.

Referenced by tree_print_code::visit_octave_user_function_trailer().

◆ type_id()

int octave_user_function::type_id ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 470 of file ov-usr-fcn.h.

◆ type_name()

std::string octave_user_function::type_name ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 470 of file ov-usr-fcn.h.

◆ unlock_subfunctions()

void octave_user_function::unlock_subfunctions ( )
virtual

Reimplemented from octave_function.

Definition at line 401 of file ov-usr-fcn.cc.

References octave_user_code::m_scope.

◆ user_code_value()

octave_user_code* octave_user_function::user_code_value ( bool  = false)
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 220 of file ov-usr-fcn.h.

◆ user_function_value()

octave_user_function* octave_user_function::user_function_value ( bool  = false)
inlinevirtual

The documentation for this class was generated from the following files: