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

#include "cdef-object.h"

Inheritance diagram for cdef_object_base:
Collaboration diagram for cdef_object_base:

Public Member Functions

 cdef_object_base (void)
 
 ~cdef_object_base (void)
 
virtual Array< cdef_objectarray_value (void) const
 
virtual void break_closure_cycles (const std::shared_ptr< stack_frame > &)
 
OCTINTERP_API std::string class_name (void) const
 
virtual cdef_object_repclone (void) const
 
virtual cdef_object_repcopy (void) const
 
virtual void destroy (void)
 
virtual dim_vector dims (void) const
 
cdef_object_repempty_clone (void) const
 
virtual octave_value get (const std::string &) const
 
OCTINTERP_API cdef_class get_class (void) const
 
virtual octave_value get_property (octave_idx_type, const std::string &) const
 
virtual bool is_array (void) const
 
virtual bool is_constructed (void) const
 
virtual bool is_constructed_for (const cdef_class &) const
 
virtual bool is_handle_object (void) const
 
virtual bool is_meta_object (void) const
 
virtual bool is_partially_constructed_for (const cdef_class &) const
 
virtual bool is_valid (void) const
 
virtual bool is_value_object (void) const
 
OCTINTERP_API cdef_object_repmake_array (void) const
 
virtual string_vector map_keys (void) const
 
virtual void mark_as_constructed (const cdef_class &)
 
virtual void mark_as_constructed (void)
 
virtual void mark_for_construction (const cdef_class &)
 
cdef_object_baseoperator= (const cdef_object_base &)=delete
 
virtual void put (const std::string &, const octave_value &)
 
OCTINTERP_API void release (const cdef_object &obj)
 
OCTINTERP_API void set_class (const cdef_class &cls)
 
virtual void set_property (octave_idx_type, const std::string &, const octave_value &)
 
virtual octave_idx_type static_count (void) const
 
virtual octave_value subsasgn (const std::string &, const std::list< octave_value_list > &, const octave_value &)
 
virtual octave_value_list subsref (const std::string &, const std::list< octave_value_list > &, int, std::size_t &, const cdef_class &, bool)
 

Protected Member Functions

 cdef_object_base (const cdef_object_base &obj)
 

Protected Attributes

refcount< octave_idx_typem_count
 

Private Member Functions

OCTAVE_NORETURN void err_invalid_object (const char *who) const
 

Private Attributes

cdef_object m_klass
 

Detailed Description

Definition at line 353 of file cdef-object.h.

Constructor & Destructor Documentation

◆ cdef_object_base() [1/2]

cdef_object_base::cdef_object_base ( void  )
inline

Definition at line 359 of file cdef-object.h.

◆ ~cdef_object_base()

cdef_object_base::~cdef_object_base ( void  )
inline

Definition at line 365 of file cdef-object.h.

◆ cdef_object_base() [2/2]

cdef_object_base::cdef_object_base ( const cdef_object_base obj)
inlineprotected

Definition at line 381 of file cdef-object.h.

Member Function Documentation

◆ array_value()

virtual Array<cdef_object> cdef_object_rep::array_value ( void  ) const
inlinevirtualinherited

Reimplemented in cdef_object_array.

Definition at line 97 of file cdef-object.h.

Referenced by cdef_object::array_value().

◆ break_closure_cycles()

virtual void cdef_object_rep::break_closure_cycles ( const std::shared_ptr< stack_frame > &  )
inlinevirtualinherited

Reimplemented in cdef_object_scalar.

Definition at line 121 of file cdef-object.h.

Referenced by cdef_object::break_closure_cycles().

◆ class_name()

std::string cdef_object_rep::class_name ( void  ) const
inherited

◆ clone()

virtual cdef_object_rep* cdef_object_rep::clone ( void  ) const
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().

◆ copy()

virtual cdef_object_rep* cdef_object_rep::copy ( void  ) const
inlinevirtualinherited

◆ destroy()

virtual void cdef_object_rep::destroy ( void  )
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().

◆ dims()

virtual dim_vector cdef_object_rep::dims ( void  ) const
inlinevirtualinherited

Reimplemented in cdef_object_scalar, and cdef_object_array.

Definition at line 182 of file cdef-object.h.

Referenced by cdef_object::dims().

◆ empty_clone()

cdef_object_rep* cdef_object_base::empty_clone ( void  ) const
inlinevirtual

Reimplemented from cdef_object_rep.

Definition at line 371 of file cdef-object.h.

◆ err_invalid_object()

OCTAVE_NORETURN void cdef_object_rep::err_invalid_object ( const char *  who) const
inlineprivateinherited

Definition at line 195 of file cdef-object.h.

References error().

Referenced by cdef_object_rep::get_class().

◆ get()

virtual octave_value cdef_object_rep::get ( const std::string &  ) const
inlinevirtualinherited

Reimplemented in cdef_object_scalar.

Definition at line 105 of file cdef-object.h.

Referenced by cdef_object::get().

◆ get_class()

◆ get_property()

virtual octave_value cdef_object_rep::get_property ( octave_idx_type  ,
const std::string &   
) const
inlinevirtualinherited

Reimplemented in cdef_object_scalar, and cdef_object_array.

Definition at line 116 of file cdef-object.h.

Referenced by cdef_object::get_property().

◆ is_array()

virtual bool cdef_object_rep::is_array ( void  ) const
inlinevirtualinherited

Reimplemented in cdef_object_array.

Definition at line 89 of file cdef-object.h.

Referenced by cdef_object::is_array().

◆ is_constructed()

virtual bool cdef_object_rep::is_constructed ( void  ) const
inlinevirtualinherited

Reimplemented in cdef_object_scalar.

Definition at line 171 of file cdef-object.h.

Referenced by cdef_object::is_constructed().

◆ is_constructed_for()

virtual bool cdef_object_rep::is_constructed_for ( const cdef_class ) const
inlinevirtualinherited

Reimplemented in cdef_object_scalar.

Definition at line 151 of file cdef-object.h.

Referenced by cdef_object::is_constructed_for().

◆ is_handle_object()

virtual bool cdef_object_rep::is_handle_object ( void  ) const
inlinevirtualinherited

◆ is_meta_object()

virtual bool cdef_object_rep::is_meta_object ( void  ) const
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().

◆ is_partially_constructed_for()

virtual bool cdef_object_rep::is_partially_constructed_for ( const cdef_class ) const
inlinevirtualinherited

Reimplemented in cdef_object_scalar.

Definition at line 156 of file cdef-object.h.

Referenced by cdef_object::is_partially_constructed_for().

◆ is_valid()

virtual bool cdef_object_rep::is_valid ( void  ) const
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().

◆ is_value_object()

virtual bool cdef_object_rep::is_value_object ( void  ) const
inlinevirtualinherited

Reimplemented in value_cdef_object.

Definition at line 91 of file cdef-object.h.

Referenced by cdef_object::is_value_object().

◆ make_array()

cdef_object_rep * cdef_object_base::make_array ( void  ) const
virtual

Reimplemented from cdef_object_rep.

Definition at line 206 of file cdef-object.cc.

References get_class(), and r.

◆ map_keys()

string_vector cdef_object_rep::map_keys ( void  ) const
virtualinherited

◆ mark_as_constructed() [1/2]

virtual void cdef_object_rep::mark_as_constructed ( const cdef_class )
inlinevirtualinherited

Reimplemented in cdef_object_scalar.

Definition at line 166 of file cdef-object.h.

◆ mark_as_constructed() [2/2]

virtual void cdef_object_rep::mark_as_constructed ( void  )
inlinevirtualinherited

Reimplemented in cdef_object_scalar.

Definition at line 161 of file cdef-object.h.

Referenced by cdef_object::mark_as_constructed().

◆ mark_for_construction()

virtual void cdef_object_rep::mark_for_construction ( const cdef_class )
inlinevirtualinherited

Reimplemented in cdef_object_scalar.

Definition at line 146 of file cdef-object.h.

Referenced by cdef_object::mark_for_construction().

◆ operator=()

cdef_object_base& cdef_object_base::operator= ( const cdef_object_base )
delete

◆ put()

virtual void cdef_object_rep::put ( const std::string &  ,
const octave_value  
)
inlinevirtualinherited

Reimplemented in cdef_object_scalar.

Definition at line 102 of file cdef-object.h.

Referenced by cdef_object::put().

◆ release()

◆ set_class()

void cdef_object_base::set_class ( const cdef_class cls)
virtual

Reimplemented from cdef_object_rep.

Definition at line 195 of file cdef-object.cc.

References get_class(), m_klass, and cdef_object::ok().

◆ set_property()

virtual void cdef_object_rep::set_property ( octave_idx_type  ,
const std::string &  ,
const octave_value  
)
inlinevirtualinherited

Reimplemented in cdef_object_scalar, and cdef_object_array.

Definition at line 110 of file cdef-object.h.

Referenced by cdef_object::set_property().

◆ static_count()

virtual octave_idx_type cdef_object_rep::static_count ( void  ) const
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().

◆ subsasgn()

virtual octave_value cdef_object_rep::subsasgn ( const std::string &  ,
const std::list< octave_value_list > &  ,
const octave_value  
)
inlinevirtualinherited

Reimplemented in cdef_object_scalar, and cdef_object_array.

Definition at line 134 of file cdef-object.h.

Referenced by cdef_object::subsasgn().

◆ subsref()

virtual octave_value_list cdef_object_rep::subsref ( const std::string &  ,
const std::list< octave_value_list > &  ,
int  ,
std::size_t &  ,
const cdef_class ,
bool   
)
inlinevirtualinherited

Reimplemented in cdef_object_scalar, and cdef_object_array.

Definition at line 127 of file cdef-object.h.

Referenced by cdef_object::subsref().

Member Data Documentation

◆ m_count

◆ m_klass

cdef_object cdef_object_base::m_klass
private

Definition at line 388 of file cdef-object.h.

Referenced by get_class(), and set_class().


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