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

#include "ov-classdef.h"

Inheritance diagram for octave_classdef:
octave_base_value

Public Member Functions

 octave_classdef ()
 
 octave_classdef (const octave::cdef_object &obj)
 
 ~octave_classdef ()=default
 
void break_closure_cycles (const std::shared_ptr< octave::stack_frame > &frame)
 
std::string class_name () const
 
octave_classdefclassdef_object_value (bool=false)
 
octave_base_valueclone () const
 
dim_vector dims () const
 
octave_base_valueempty_clone () const
 
octave::cdef_object get_object () const
 
octave::cdef_object & get_object_ref ()
 
octave_value get_property (octave_idx_type idx, const std::string &name) const
 
bool is_classdef_object () const
 
bool is_defined () const
 
bool is_instance_of (const std::string &cls_name) const
 
bool isobject () const
 
bool isstruct () const
 
string_vector map_keys () const
 
octave_map map_value () const
 
void print (std::ostream &os, bool pr_as_read_syntax=false)
 
void print_raw (std::ostream &os, bool pr_as_read_syntax=false) const
 
void set_property (octave_idx_type idx, const std::string &name, const octave_value &pval)
 
Matrix size ()
 
octave_value subsasgn (const std::string &type, const std::list< octave_value_list > &idx, const octave_value &rhs)
 
octave_value subsref (const std::string &type, const std::list< octave_value_list > &idx)
 
octave_value subsref (const std::string &type, const std::list< octave_value_list > &idx, bool auto_add)
 
octave_value_list subsref (const std::string &type, const std::list< octave_value_list > &idx, int nargout)
 
int type_id () const
 
std::string type_name () const
 
octave_value undef_subsasgn (const std::string &type, const std::list< octave_value_list > &idx, const octave_value &rhs)
 
octave_idx_type xnumel (const octave_value_list &)
 
- 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 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
 
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 octave_value do_index_op (const octave_value_list &idx, bool resize_ok=false)
 
virtual double double_value (bool=false) const
 
virtual octave_value dump () const
 
virtual std::string edit_display (const float_display_format &, octave_idx_type, octave_idx_type) const
 
virtual void erase_subfunctions ()
 
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_functionfunction_value (bool silent=false)
 
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_anonymous_function () 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_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 () const
 
virtual bool is_function_cache () const
 
virtual bool is_function_handle () const
 
virtual bool is_inline_function () 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_code () const
 
virtual bool is_user_function () 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 islocked () const
 
virtual bool islogical () const
 
virtual bool isnull () const
 
virtual bool isnumeric () const
 
virtual bool isreal () const
 
virtual sortmode issorted (sortmode mode=UNSORTED) const
 
virtual bool issparse () 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 void lock ()
 
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 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 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_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 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_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_base_valueunique_clone ()
 
virtual octave_base_valueunique_parent_class (const std::string &)
 
virtual void unlock ()
 
virtual octave_user_codeuser_code_value (bool silent=false)
 
virtual octave_user_functionuser_function_value (bool silent=false)
 
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 std::string xstring_value () const
 

Static Public Member Functions

static octave_value metaclass_query (const std::string &cls)
 
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 octave_value superclass_ref (const std::string &meth, const std::string &cls)
 
- 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_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_base_value
octave::refcount< octave_idx_type > & count
 
octave::refcount< octave_idx_typem_count
 

Detailed Description

Definition at line 46 of file ov-classdef.h.

Constructor & Destructor Documentation

◆ octave_classdef() [1/2]

octave_classdef::octave_classdef ( )
inline

Definition at line 51 of file ov-classdef.h.

◆ octave_classdef() [2/2]

octave_classdef::octave_classdef ( const octave::cdef_object &  obj)
inline

Definition at line 54 of file ov-classdef.h.

◆ ~octave_classdef()

octave_classdef::~octave_classdef ( )
default

Member Function Documentation

◆ break_closure_cycles()

void octave_classdef::break_closure_cycles ( const std::shared_ptr< octave::stack_frame > &  frame)
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 92 of file ov-classdef.h.

◆ class_name()

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

Reimplemented from octave_base_value.

Definition at line 152 of file ov-classdef.h.

Referenced by print_raw().

◆ classdef_object_value()

octave_classdef* octave_classdef::classdef_object_value ( bool  = false)
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 71 of file ov-classdef.h.

◆ clone()

octave_base_value* octave_classdef::clone ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 61 of file ov-classdef.h.

◆ dims()

dim_vector octave_classdef::dims ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 129 of file ov-classdef.h.

Referenced by print_raw().

◆ empty_clone()

octave_base_value* octave_classdef::empty_clone ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 66 of file ov-classdef.h.

◆ get_object()

octave::cdef_object octave_classdef::get_object ( ) const
inline

Definition at line 73 of file ov-classdef.h.

Referenced by octave_classdef_superclass_ref::execute().

◆ get_object_ref()

octave::cdef_object& octave_classdef::get_object_ref ( )
inline

Definition at line 75 of file ov-classdef.h.

◆ get_property()

octave_value octave_classdef::get_property ( octave_idx_type  idx,
const std::string &  name 
) const
inline

Definition at line 138 of file ov-classdef.h.

Referenced by is_superclass().

◆ is_classdef_object()

bool octave_classdef::is_classdef_object ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 83 of file ov-classdef.h.

◆ is_defined()

bool octave_classdef::is_defined ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 77 of file ov-classdef.h.

◆ is_instance_of()

bool octave_classdef::is_instance_of ( const std::string &  cls_name) const
virtual

Reimplemented from octave_base_value.

Definition at line 419 of file ov-classdef.cc.

References is_superclass(), and lookup_class().

◆ isobject()

bool octave_classdef::isobject ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 81 of file ov-classdef.h.

◆ isstruct()

bool octave_classdef::isstruct ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 79 of file ov-classdef.h.

◆ map_keys()

string_vector octave_classdef::map_keys ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 125 of file ov-classdef.h.

◆ map_value()

octave_map octave_classdef::map_value ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 127 of file ov-classdef.h.

◆ metaclass_query()

octave_value octave_classdef::metaclass_query ( const std::string &  cls)
static

Definition at line 437 of file ov-classdef.cc.

References lookup_class(), and to_ov().

Referenced by tree_metaclass_query::evaluate().

◆ print()

void octave_classdef::print ( std::ostream &  os,
bool  pr_as_read_syntax = false 
)
virtual

Reimplemented from octave_base_value.

Definition at line 320 of file ov-classdef.cc.

References print_raw().

◆ print_raw()

◆ register_type()

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

Definition at line 65 of file ov-classdef.cc.

◆ set_property()

void octave_classdef::set_property ( octave_idx_type  idx,
const std::string &  name,
const octave_value pval 
)
inline

Definition at line 131 of file ov-classdef.h.

◆ size()

Matrix octave_classdef::size ( )
virtual

Reimplemented from octave_base_value.

Definition at line 247 of file ov-classdef.cc.

◆ static_class_name()

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

Definition at line 156 of file ov-classdef.h.

◆ static_type_id()

static int octave_classdef::static_type_id ( )
inlinestatic

Definition at line 154 of file ov-classdef.h.

◆ static_type_name()

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

Definition at line 155 of file ov-classdef.h.

◆ subsasgn()

octave_value octave_classdef::subsasgn ( const std::string &  type,
const std::list< octave_value_list > &  idx,
const octave_value rhs 
)
virtual

Reimplemented from octave_base_value.

Definition at line 190 of file ov-classdef.cc.

Referenced by undef_subsasgn().

◆ subsref() [1/3]

octave_value octave_classdef::subsref ( const std::string &  type,
const std::list< octave_value_list > &  idx 
)
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 101 of file ov-classdef.h.

References octave_value_list::length().

◆ subsref() [2/3]

octave_value octave_classdef::subsref ( const std::string &  type,
const std::list< octave_value_list > &  idx,
bool  auto_add 
)
virtual

Reimplemented from octave_base_value.

Definition at line 148 of file ov-classdef.cc.

◆ subsref() [3/3]

octave_value_list octave_classdef::subsref ( const std::string &  type,
const std::list< octave_value_list > &  idx,
int  nargout 
)
virtual

Reimplemented from octave_base_value.

Definition at line 72 of file ov-classdef.cc.

◆ superclass_ref()

octave_value octave_classdef::superclass_ref ( const std::string &  meth,
const std::string &  cls 
)
static

Definition at line 430 of file ov-classdef.cc.

References octave_base_value::octave_value.

Referenced by tree_superclass_ref::evaluate_n().

◆ type_id()

int octave_classdef::type_id ( ) const
inlinevirtual

Reimplemented from octave_base_value.

Definition at line 150 of file ov-classdef.h.

◆ type_name()

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

Reimplemented from octave_base_value.

Definition at line 151 of file ov-classdef.h.

◆ undef_subsasgn()

octave_value octave_classdef::undef_subsasgn ( const std::string &  type,
const std::list< octave_value_list > &  idx,
const octave_value rhs 
)
virtual

◆ xnumel()

octave_idx_type octave_classdef::xnumel ( const octave_value_list idx)
virtual

Reimplemented from octave_base_value.

Definition at line 273 of file ov-classdef.cc.


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