GNU Octave  8.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
cdef_package::cdef_package_rep Class Reference
Inheritance diagram for cdef_package::cdef_package_rep:
Collaboration diagram for cdef_package::cdef_package_rep:

Public Member Functions

 cdef_package_rep (void)
 
 ~cdef_package_rep (void)=default
 
virtual Array< cdef_objectarray_value (void) const
 
void break_closure_cycles (const std::shared_ptr< stack_frame > &frame)
 
OCTINTERP_API std::string class_name (void) const
 
cdef_object_repclone (void) const
 
cdef_object_repcopy (void) const
 
void destroy (void)
 
dim_vector dims (void) const
 
cdef_object_repempty_clone (void) const
 
OCTINTERP_API octave_value find (const std::string &nm)
 
octave_value get (const std::string &pname) const
 
OCTINTERP_API cdef_class get_class (void) const
 
OCTINTERP_API Cell get_classes (void) const
 
OCTINTERP_API Cell get_functions (void) const
 
std::string get_name (void) const
 
OCTINTERP_API Cell get_packages (void) const
 
octave_value get_property (octave_idx_type idx, const std::string &pname) const
 
OCTINTERP_API void install_class (const cdef_class &cls, const std::string &nm)
 
OCTINTERP_API void install_function (const octave_value &fcn, const std::string &nm)
 
OCTINTERP_API void install_package (const cdef_package &pack, const std::string &nm)
 
virtual bool is_array (void) const
 
virtual bool is_class (void) const
 
bool is_constructed (void) const
 
OCTINTERP_API bool is_constructed_for (const cdef_class &cls) const
 
bool is_handle_object (void) const
 
bool is_meta_object (void) const
 
virtual bool is_method (void) const
 
bool is_package (void) const
 
OCTINTERP_API bool is_partially_constructed_for (const cdef_class &cls) const
 
virtual bool is_property (void) const
 
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
 
OCTINTERP_API void mark_as_constructed (const cdef_class &cls)
 
void mark_as_constructed (void)
 
OCTINTERP_API void mark_for_construction (const cdef_class &)
 
bool meta_accepts_postfix_index (char type) const
 
OCTINTERP_API void meta_release (void)
 
OCTINTERP_API octave_value_list meta_subsref (const std::string &type, const std::list< octave_value_list > &idx, int nargout)
 
cdef_package_repoperator= (const cdef_package_rep &)=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_name (const std::string &nm)
 
void set_property (octave_idx_type idx, const std::string &pname, const octave_value &pval)
 
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 Attributes

refcount< octave_idx_typem_count
 
std::map< cdef_class, std::list< cdef_class > > m_ctor_list
 
octave_scalar_map m_map
 

Private Types

typedef std::map< std::string, cdef_class >::const_iterator class_const_iterator
 
typedef std::map< std::string, cdef_class >::iterator class_iterator
 
typedef std::map< std::string, octave_value >::const_iterator function_const_iterator
 
typedef std::map< std::string, octave_value >::iterator function_iterator
 
typedef std::map< std::string, cdef_package >::const_iterator package_const_iterator
 
typedef std::map< std::string, cdef_package >::iterator package_iterator
 

Private Member Functions

 cdef_package_rep (const cdef_package_rep &p)
 
OCTAVE_NORETURN void err_invalid_object (const char *who) const
 
cdef_package wrap (void)
 

Private Attributes

std::map< std::string, cdef_classm_class_map
 
std::string m_full_name
 
std::map< std::string, octave_valuem_function_map
 
cdef_object m_klass
 
octave_idx_type m_member_count
 
std::map< std::string, cdef_packagem_package_map
 

Detailed Description

Definition at line 53 of file cdef-package.h.

Member Typedef Documentation

◆ class_const_iterator

typedef std::map<std::string, cdef_class>::const_iterator cdef_package::cdef_package_rep::class_const_iterator
private

Definition at line 130 of file cdef-package.h.

◆ class_iterator

typedef std::map<std::string, cdef_class>::iterator cdef_package::cdef_package_rep::class_iterator
private

Definition at line 129 of file cdef-package.h.

◆ function_const_iterator

typedef std::map<std::string, octave_value>::const_iterator cdef_package::cdef_package_rep::function_const_iterator
private

Definition at line 133 of file cdef-package.h.

◆ function_iterator

typedef std::map<std::string, octave_value>::iterator cdef_package::cdef_package_rep::function_iterator
private

Definition at line 131 of file cdef-package.h.

◆ package_const_iterator

typedef std::map<std::string, cdef_package>::const_iterator cdef_package::cdef_package_rep::package_const_iterator
private

Definition at line 136 of file cdef-package.h.

◆ package_iterator

typedef std::map<std::string, cdef_package>::iterator cdef_package::cdef_package_rep::package_iterator
private

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

Constructor & Destructor Documentation

◆ cdef_package_rep() [1/2]

cdef_package::cdef_package_rep::cdef_package_rep ( void  )
inline

Definition at line 58 of file cdef-package.h.

◆ ~cdef_package_rep()

cdef_package::cdef_package_rep::~cdef_package_rep ( void  )
default

◆ cdef_package_rep() [2/2]

cdef_package::cdef_package_rep::cdef_package_rep ( const cdef_package_rep p)
inlineprivate

Definition at line 138 of file cdef-package.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()

void cdef_object_scalar::break_closure_cycles ( const std::shared_ptr< stack_frame > &  frame)
virtualinherited

◆ class_name()

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

◆ clone()

cdef_object_rep* handle_cdef_object::clone ( void  ) const
inlinevirtualinherited

Reimplemented from cdef_object_rep.

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

References cdef_object_rep::m_count.

◆ copy()

cdef_object_rep* cdef_package::cdef_package_rep::copy ( void  ) const
inlinevirtual

Reimplemented from cdef_meta_object_rep.

Definition at line 64 of file cdef-package.h.

◆ destroy()

void cdef_package::cdef_package_rep::destroy ( void  )
inlinevirtual

Reimplemented from cdef_object_rep.

Definition at line 90 of file cdef-package.h.

◆ dims()

dim_vector cdef_object_scalar::dims ( void  ) const
inlinevirtualinherited

Reimplemented from cdef_object_rep.

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

◆ empty_clone()

cdef_object_rep* cdef_object_base::empty_clone ( void  ) const
inlinevirtualinherited

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

◆ find()

octave_value cdef_package::cdef_package_rep::find ( const std::string &  nm)

◆ get()

octave_value cdef_object_scalar::get ( const std::string &  pname) const
inlinevirtualinherited

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

◆ get_class()

◆ get_classes()

Cell cdef_package::cdef_package_rep::get_classes ( void  ) const

Definition at line 95 of file cdef-package.cc.

References map2Cell().

◆ get_functions()

Cell cdef_package::cdef_package_rep::get_functions ( void  ) const

Definition at line 101 of file cdef-package.cc.

References map2Cell().

◆ get_name()

std::string cdef_package::cdef_package_rep::get_name ( void  ) const
inline

Definition at line 69 of file cdef-package.h.

References cdef_object::get(), and octave_value::string_value().

◆ get_packages()

Cell cdef_package::cdef_package_rep::get_packages ( void  ) const

Definition at line 107 of file cdef-package.cc.

References map2Cell().

◆ get_property()

octave_value cdef_object_scalar::get_property ( octave_idx_type  idx,
const std::string &  pname 
) const
inlinevirtualinherited

Reimplemented from cdef_object_rep.

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

References error(), and cdef_object::get().

◆ install_class()

void cdef_package::cdef_package_rep::install_class ( const cdef_class cls,
const std::string &  nm 
)

Definition at line 57 of file cdef-package.cc.

References m_class_map, and m_member_count.

◆ install_function()

void cdef_package::cdef_package_rep::install_function ( const octave_value fcn,
const std::string &  nm 
)

Definition at line 66 of file cdef-package.cc.

◆ install_package()

void cdef_package::cdef_package_rep::install_package ( const cdef_package pack,
const std::string &  nm 
)

Definition at line 73 of file cdef-package.cc.

◆ 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_class()

virtual bool cdef_meta_object_rep::is_class ( void  ) const
inlinevirtualinherited

Reimplemented in cdef_class::cdef_class_rep.

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

◆ is_constructed()

bool cdef_object_scalar::is_constructed ( void  ) const
inlinevirtualinherited

◆ is_constructed_for()

bool cdef_object_scalar::is_constructed_for ( const cdef_class cls) const
virtualinherited

Reimplemented from cdef_object_rep.

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

References cdef_object_scalar::is_constructed(), and cdef_object_scalar::m_ctor_list.

◆ is_handle_object()

bool handle_cdef_object::is_handle_object ( void  ) const
inlinevirtualinherited

Reimplemented from cdef_object_rep.

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

◆ is_meta_object()

bool cdef_meta_object_rep::is_meta_object ( void  ) const
inlinevirtualinherited

Reimplemented from cdef_object_rep.

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

◆ is_method()

virtual bool cdef_meta_object_rep::is_method ( void  ) const
inlinevirtualinherited

Reimplemented in cdef_method::cdef_method_rep.

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

◆ is_package()

bool cdef_package::cdef_package_rep::is_package ( void  ) const
inlinevirtual

Reimplemented from cdef_meta_object_rep.

Definition at line 67 of file cdef-package.h.

◆ is_partially_constructed_for()

bool cdef_object_scalar::is_partially_constructed_for ( const cdef_class cls) const
virtualinherited

Reimplemented from cdef_object_rep.

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

References cdef_object_scalar::is_constructed(), and cdef_object_scalar::m_ctor_list.

◆ is_property()

virtual bool cdef_meta_object_rep::is_property ( void  ) const
inlinevirtualinherited

Reimplemented in cdef_property::cdef_property_rep.

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

◆ is_valid()

bool handle_cdef_object::is_valid ( void  ) const
inlinevirtualinherited

Reimplemented from cdef_object_rep.

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

◆ 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
virtualinherited

Reimplemented from cdef_object_rep.

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

References cdef_object_base::get_class(), and r.

◆ map_keys()

string_vector cdef_object_rep::map_keys ( void  ) const
virtualinherited

◆ mark_as_constructed() [1/2]

void cdef_object_scalar::mark_as_constructed ( const cdef_class cls)
virtualinherited

Reimplemented from cdef_object_rep.

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

References cdef_object_scalar::m_ctor_list.

◆ mark_as_constructed() [2/2]

void cdef_object_scalar::mark_as_constructed ( void  )
inlinevirtualinherited

Reimplemented from cdef_object_rep.

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

◆ mark_for_construction()

void cdef_object_scalar::mark_for_construction ( const cdef_class cls)
virtualinherited

◆ meta_accepts_postfix_index()

bool cdef_package::cdef_package_rep::meta_accepts_postfix_index ( char  type) const
inlinevirtual

Reimplemented from cdef_meta_object_rep.

Definition at line 111 of file cdef-package.h.

◆ meta_release()

void cdef_package::cdef_package_rep::meta_release ( void  )
virtual

◆ meta_subsref()

octave_value_list cdef_package::cdef_package_rep::meta_subsref ( const std::string &  type,
const std::list< octave_value_list > &  idx,
int  nargout 
)
virtual

◆ operator=()

cdef_package_rep& cdef_package::cdef_package_rep::operator= ( const cdef_package_rep )
delete

◆ put()

void cdef_object_scalar::put ( const std::string &  pname,
const octave_value val 
)
inlinevirtualinherited

Reimplemented from cdef_object_rep.

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

Referenced by cdef_class::cdef_class_rep::cdef_class_rep().

◆ release()

◆ set_class()

void cdef_object_base::set_class ( const cdef_class cls)
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().

◆ set_name()

void cdef_package::cdef_package_rep::set_name ( const std::string &  nm)
inline

Definition at line 71 of file cdef-package.h.

References cdef_object::put().

◆ set_property()

void cdef_object_scalar::set_property ( octave_idx_type  idx,
const std::string &  pname,
const octave_value pval 
)
inlinevirtualinherited

Reimplemented from cdef_object_rep.

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

References error(), and cdef_object::put().

◆ static_count()

octave_idx_type cdef_package::cdef_package_rep::static_count ( void  ) const
inlinevirtual

Reimplemented from cdef_object_rep.

Definition at line 88 of file cdef-package.h.

◆ subsasgn()

◆ subsref()

octave_value_list cdef_object_scalar::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 
)
virtualinherited

◆ wrap()

cdef_package cdef_package::cdef_package_rep::wrap ( void  )
inlineprivate

Definition at line 144 of file cdef-package.h.

References cdef_package.

Member Data Documentation

◆ m_class_map

std::map<std::string, cdef_class> cdef_package::cdef_package_rep::m_class_map
private

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

Referenced by install_class().

◆ m_count

◆ m_ctor_list

◆ m_full_name

std::string cdef_package::cdef_package_rep::m_full_name
private

Definition at line 120 of file cdef-package.h.

◆ m_function_map

std::map<std::string, octave_value> cdef_package::cdef_package_rep::m_function_map
private

Definition at line 122 of file cdef-package.h.

◆ m_klass

cdef_object cdef_object_base::m_klass
privateinherited

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

Referenced by cdef_object_base::get_class(), and cdef_object_base::set_class().

◆ m_map

octave_scalar_map cdef_object_scalar::m_map
protectedinherited

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

Referenced by cdef_object_scalar::break_closure_cycles().

◆ m_member_count

octave_idx_type cdef_package::cdef_package_rep::m_member_count
private

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

Referenced by install_class().

◆ m_package_map

std::map<std::string, cdef_package> cdef_package::cdef_package_rep::m_package_map
private

Definition at line 123 of file cdef-package.h.


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