#include "cdef-object.h"
Public Member Functions | |
cdef_object_scalar (void) | |
~cdef_object_scalar (void)=default | |
virtual Array< cdef_object > | array_value (void) const |
void | break_closure_cycles (const std::shared_ptr< stack_frame > &frame) |
OCTINTERP_API std::string | class_name (void) const |
virtual cdef_object_rep * | clone (void) const |
virtual cdef_object_rep * | copy (void) const |
virtual void | destroy (void) |
dim_vector | dims (void) const |
cdef_object_rep * | empty_clone (void) const |
octave_value | get (const std::string &pname) const |
OCTINTERP_API cdef_class | get_class (void) const |
octave_value | get_property (octave_idx_type idx, const std::string &pname) const |
virtual bool | is_array (void) const |
bool | is_constructed (void) const |
OCTINTERP_API bool | is_constructed_for (const cdef_class &cls) const |
virtual bool | is_handle_object (void) const |
virtual bool | is_meta_object (void) const |
OCTINTERP_API bool | is_partially_constructed_for (const cdef_class &cls) const |
virtual bool | is_valid (void) const |
virtual bool | is_value_object (void) const |
OCTINTERP_API cdef_object_rep * | make_array (void) const |
virtual string_vector | map_keys (void) const |
OCTINTERP_API void | mark_as_constructed (const cdef_class &cls) |
void | mark_as_constructed (void) |
OCTINTERP_API void | mark_for_construction (const cdef_class &) |
cdef_object_scalar & | operator= (const cdef_object_scalar &)=delete |
void | put (const std::string &pname, const octave_value &val) |
OCTINTERP_API void | release (const cdef_object &obj) |
OCTINTERP_API void | set_class (const cdef_class &cls) |
void | set_property (octave_idx_type idx, const std::string &pname, const octave_value &pval) |
virtual octave_idx_type | static_count (void) const |
OCTINTERP_API octave_value | subsasgn (const std::string &type, const std::list< octave_value_list > &idx, const octave_value &rhs) |
OCTINTERP_API octave_value_list | subsref (const std::string &type, const std::list< octave_value_list > &idx, int nargout, std::size_t &skip, const cdef_class &context, bool auto_add) |
Protected Member Functions | |
cdef_object_scalar (const cdef_object_scalar &obj) | |
Protected Attributes | |
refcount< octave_idx_type > | m_count |
std::map< cdef_class, std::list< cdef_class > > | m_ctor_list |
octave_scalar_map | m_map |
Private Member Functions | |
OCTAVE_NORETURN void | err_invalid_object (const char *who) const |
Private Attributes | |
cdef_object | m_klass |
Definition at line 459 of file cdef-object.h.
|
inline |
Definition at line 465 of file cdef-object.h.
|
default |
|
inlineprotected |
Definition at line 541 of file cdef-object.h.
|
inlinevirtualinherited |
Reimplemented in cdef_object_array.
Definition at line 97 of file cdef-object.h.
Referenced by cdef_object::array_value().
|
virtual |
Reimplemented from cdef_object_rep.
Definition at line 504 of file cdef-object.cc.
References octave_value::break_closure_cycles(), octave_scalar_map::contents(), m_map, and octave_scalar_map::nfields().
|
inherited |
Definition at line 120 of file cdef-object.cc.
References cdef_object_rep::get_class(), and cdef_class::get_name().
Referenced by cdef_object::class_name(), cdef_object_array::subsasgn(), and cdef_object_array::subsref().
|
inlinevirtualinherited |
Reimplemented in value_cdef_object, handle_cdef_object, and cdef_object_array.
Definition at line 69 of file cdef-object.h.
Referenced by cdef_object::clone().
|
inlinevirtualinherited |
Reimplemented in cdef_property::cdef_property_rep, cdef_package::cdef_package_rep, cdef_meta_object_rep, value_cdef_object, handle_cdef_object, cdef_method::cdef_method_rep, and cdef_class::cdef_class_rep.
Definition at line 79 of file cdef-object.h.
Referenced by cdef_object::copy().
|
inlinevirtualinherited |
Reimplemented in cdef_package::cdef_package_rep, and cdef_class::cdef_class_rep.
Definition at line 178 of file cdef-object.h.
Referenced by cdef_object_rep::release().
|
inlinevirtual |
Reimplemented from cdef_object_rep.
Definition at line 471 of file cdef-object.h.
|
inlinevirtualinherited |
Reimplemented from cdef_object_rep.
Definition at line 371 of file cdef-object.h.
|
inlineprivateinherited |
Definition at line 195 of file cdef-object.h.
References error().
Referenced by cdef_object_rep::get_class().
|
inlinevirtual |
Reimplemented from cdef_object_rep.
Definition at line 480 of file cdef-object.h.
References error(), and Array< T, Alloc >::numel().
Referenced by cdef_property::cdef_property_rep::get_value().
|
virtualinherited |
Reimplemented from cdef_object_rep.
Definition at line 189 of file cdef-object.cc.
References cdef_class, and cdef_object_base::m_klass.
Referenced by handle_cdef_object::~handle_cdef_object(), value_cdef_object::~value_cdef_object(), cdef_object_array::fill_empty_values(), cdef_object_base::make_array(), cdef_object_base::set_class(), cdef_object_array::subsasgn(), subsasgn(), cdef_object_array::subsref(), and subsref().
|
inlinevirtual |
Reimplemented from cdef_object_rep.
Definition at line 500 of file cdef-object.h.
References error(), and cdef_object::get().
|
inlinevirtualinherited |
Reimplemented in cdef_object_array.
Definition at line 89 of file cdef-object.h.
Referenced by cdef_object::is_array().
|
inlinevirtual |
Reimplemented from cdef_object_rep.
Definition at line 528 of file cdef-object.h.
Referenced by is_constructed_for(), and is_partially_constructed_for().
|
virtual |
Reimplemented from cdef_object_rep.
Definition at line 707 of file cdef-object.cc.
References is_constructed(), and m_ctor_list.
|
inlinevirtualinherited |
Reimplemented in handle_cdef_object.
Definition at line 93 of file cdef-object.h.
Referenced by cdef_object::is_handle_object(), cdef_object_rep::release(), and subsasgn().
|
inlinevirtualinherited |
Reimplemented in cdef_meta_object_rep.
Definition at line 95 of file cdef-object.h.
Referenced by cdef_object::is_meta_object(), and cdef_object_rep::release().
|
virtual |
Reimplemented from cdef_object_rep.
Definition at line 714 of file cdef-object.cc.
References is_constructed(), and m_ctor_list.
|
inlinevirtualinherited |
Reimplemented in value_cdef_object, handle_cdef_object, and cdef_object_array.
Definition at line 142 of file cdef-object.h.
Referenced by cdef_object::ok().
|
inlinevirtualinherited |
Reimplemented in value_cdef_object.
Definition at line 91 of file cdef-object.h.
Referenced by cdef_object::is_value_object().
|
virtualinherited |
Reimplemented from cdef_object_rep.
Definition at line 206 of file cdef-object.cc.
References cdef_object_base::get_class(), and r.
|
virtualinherited |
Definition at line 126 of file cdef-object.cc.
References cdef_object_rep::get_class(), cdef_class::get_names(), and cdef_object::ok().
Referenced by cdef_object::map_keys().
|
virtual |
Reimplemented from cdef_object_rep.
Definition at line 733 of file cdef-object.cc.
References m_ctor_list.
|
inlinevirtual |
Reimplemented from cdef_object_rep.
Definition at line 524 of file cdef-object.h.
|
virtual |
Reimplemented from cdef_object_rep.
Definition at line 695 of file cdef-object.cc.
References octave_value::cell_value(), cdef_object::get(), cdef_class::get_name(), lookup_classes(), and m_ctor_list.
|
delete |
|
inlinevirtual |
Reimplemented from cdef_object_rep.
Definition at line 475 of file cdef-object.h.
Referenced by cdef_class::cdef_class_rep::cdef_class_rep().
|
inherited |
Definition at line 44 of file cdef-object.cc.
References __get_interpreter__(), cdef_class::delete_object(), cdef_object_rep::destroy(), cdef_object_rep::get_class(), interpreter_try(), cdef_object_rep::is_handle_object(), cdef_object_rep::is_meta_object(), cdef_object_rep::m_count, octave_interrupt_state, action_container::protect_var(), quit_allowed, interpreter::recover_from_exception(), cdef_object_rep::static_count(), and warning().
Referenced by cdef_object::~cdef_object(), and cdef_object::operator=().
|
virtualinherited |
Reimplemented from cdef_object_rep.
Definition at line 195 of file cdef-object.cc.
References cdef_object_base::get_class(), cdef_object_base::m_klass, and cdef_object::ok().
|
inlinevirtual |
Reimplemented from cdef_object_rep.
Definition at line 490 of file cdef-object.h.
References error(), and cdef_object::put().
|
inlinevirtualinherited |
Reimplemented in cdef_package::cdef_package_rep, and cdef_class::cdef_class_rep.
Definition at line 176 of file cdef-object.h.
Referenced by cdef_object_rep::release().
|
virtual |
Reimplemented from cdef_object_rep.
Definition at line 615 of file cdef-object.cc.
References octave_value::assign(), cdef_object_rep::cdef_object, octave_value::class_name(), error(), cdef_class::find_property(), cdef_object_base::get_class(), cdef_property::get_value(), cdef_property::is_constant(), cdef_object_rep::is_handle_object(), cdef_object_rep::m_count, cdef_object::ok(), octave_value::op_asn_eq, cdef_object::set_class(), cdef_property::set_value(), cdef_object::subsasgn(), to_cdef(), and to_ov().
|
virtual |
Reimplemented from cdef_object_rep.
Definition at line 511 of file cdef-object.cc.
References cdef_object_rep::cdef_object, octave_value_list::empty(), error(), cdef_method::execute(), cdef_class::find_method(), cdef_class::find_property(), cdef_object_base::get_class(), cdef_property::get_value(), cdef_property::is_constant(), cdef_method::is_static(), cdef_object_rep::m_count, cdef_object::ok(), cdef_object::set_class(), cdef_object::subsref(), and to_ov().
|
protectedinherited |
Definition at line 187 of file cdef-object.h.
Referenced by cdef_object::cdef_object(), handle_cdef_object::clone(), cdef_object::make_unique(), cdef_object::operator=(), cdef_object_rep::release(), cdef_object_array::subsasgn(), subsasgn(), cdef_object_array::subsref(), and subsref().
|
protected |
Definition at line 536 of file cdef-object.h.
Referenced by is_constructed_for(), is_partially_constructed_for(), mark_as_constructed(), and mark_for_construction().
|
privateinherited |
Definition at line 388 of file cdef-object.h.
Referenced by cdef_object_base::get_class(), and cdef_object_base::set_class().
|
protected |
Definition at line 533 of file cdef-object.h.
Referenced by break_closure_cycles().