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

#include "cdef-manager.h"

Public Member Functions

 cdef_manager (interpreter &interp)
 
 ~cdef_manager ()=default
 
cdef_class find_class (const std::string &name, bool error_if_not_found=true, bool load_if_not_found=true)
 
octave_value find_method (const std::string &class_name, const std::string &name) const
 
octave_value find_method_symbol (const std::string &method_name, const std::string &class_name)
 
cdef_package find_package (const std::string &name, bool error_if_not_found=true, bool load_if_not_found=true)
 
octave_value find_package_symbol (const std::string &pack_name)
 
cdef_property make_attribute (const cdef_class &cls, const std::string &name)
 
cdef_class make_class (const std::string &name, const cdef_class &super)
 
cdef_class make_class (const std::string &name, const std::list< cdef_class > &super_list=std::list< cdef_class >())
 
cdef_class make_meta_class (const std::string &name, const cdef_class &super)
 
cdef_method make_method (const cdef_class &cls, const std::string &name, const octave_value &fcn, const std::string &m_access="public", bool is_static=false)
 
cdef_method make_method (const cdef_class &cls, const std::string &name, octave_builtin::fcn ff, const std::string &m_access="public", bool is_static=false)
 
cdef_method make_method (const cdef_class &cls, const std::string &name, octave_builtin::meth mm, const std::string &m_access="public", bool is_static=false)
 
cdef_package make_package (const std::string &nm, const std::string &parent="")
 
cdef_property make_property (const cdef_class &cls, const std::string &name, const octave_value &get_method=Matrix(), const std::string &get_access="public", const octave_value &set_method=Matrix(), const std::string &set_access="public")
 
const cdef_packagemeta () const
 
const cdef_classmeta_class () const
 
const cdef_classmeta_method () const
 
const cdef_classmeta_package () const
 
const cdef_classmeta_property () const
 
void register_class (const cdef_class &cls)
 
void register_package (const cdef_package &pkg)
 
void unregister_class (const cdef_class &cls)
 
void unregister_package (const cdef_package &pkg)
 

Detailed Description

Definition at line 42 of file cdef-manager.h.

Constructor & Destructor Documentation

◆ cdef_manager()

◆ ~cdef_manager()

cdef_manager::~cdef_manager ( )
default

Member Function Documentation

◆ find_class()

cdef_class cdef_manager::find_class ( const std::string &  name,
bool  error_if_not_found = true,
bool  load_if_not_found = true 
)

◆ find_method()

octave_value cdef_manager::find_method ( const std::string &  class_name,
const std::string &  name 
) const

Definition at line 942 of file cdef-manager.cc.

References cdef_class::get_method(), and lookup_class().

◆ find_method_symbol()

octave_value cdef_manager::find_method_symbol ( const std::string &  method_name,
const std::string &  class_name 
)

◆ find_package()

cdef_package cdef_manager::find_package ( const std::string &  name,
bool  error_if_not_found = true,
bool  load_if_not_found = true 
)

◆ find_package_symbol()

octave_value cdef_manager::find_package_symbol ( const std::string &  pack_name)

Definition at line 744 of file cdef-manager.cc.

References find_package(), octave_value(), and cdef_object::ok().

◆ make_attribute()

cdef_property cdef_manager::make_attribute ( const cdef_class cls,
const std::string &  name 
)

Definition at line 869 of file cdef-manager.cc.

References make_property().

Referenced by cdef_manager().

◆ make_class() [1/2]

cdef_class cdef_manager::make_class ( const std::string &  name,
const cdef_class super 
)

Definition at line 812 of file cdef-manager.cc.

References make_class().

◆ make_class() [2/2]

cdef_class cdef_manager::make_class ( const std::string &  name,
const std::list< cdef_class > &  super_list = std::list<cdef_class> () 
)

◆ make_meta_class()

cdef_class cdef_manager::make_meta_class ( const std::string &  name,
const cdef_class super 
)

Definition at line 819 of file cdef-manager.cc.

References make_class(), cdef_class::mark_as_meta_class(), and cdef_object::put().

Referenced by cdef_manager().

◆ make_method() [1/3]

cdef_method cdef_manager::make_method ( const cdef_class cls,
const std::string &  name,
const octave_value fcn,
const std::string &  m_access = "public",
bool  is_static = false 
)

◆ make_method() [2/3]

cdef_method cdef_manager::make_method ( const cdef_class cls,
const std::string &  name,
octave_builtin::fcn  ff,
const std::string &  m_access = "public",
bool  is_static = false 
)

Definition at line 904 of file cdef-manager.cc.

References make_method().

◆ make_method() [3/3]

cdef_method cdef_manager::make_method ( const cdef_class cls,
const std::string &  name,
octave_builtin::meth  mm,
const std::string &  m_access = "public",
bool  is_static = false 
)

Definition at line 914 of file cdef-manager.cc.

References make_method().

◆ make_package()

cdef_package cdef_manager::make_package ( const std::string &  nm,
const std::string &  parent = "" 
)

◆ make_property()

cdef_property cdef_manager::make_property ( const cdef_class cls,
const std::string &  name,
const octave_value get_method = Matrix (),
const std::string &  get_access = "public",
const octave_value set_method = Matrix (),
const std::string &  set_access = "public" 
)

◆ meta()

const cdef_package& cdef_manager::meta ( ) const
inline

Definition at line 94 of file cdef-manager.h.

◆ meta_class()

const cdef_class& cdef_manager::meta_class ( ) const
inline

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

Referenced by make_class().

◆ meta_method()

const cdef_class& cdef_manager::meta_method ( ) const
inline

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

Referenced by make_method().

◆ meta_package()

const cdef_class& cdef_manager::meta_package ( ) const
inline

Definition at line 92 of file cdef-manager.h.

Referenced by make_package().

◆ meta_property()

const cdef_class& cdef_manager::meta_property ( ) const
inline

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

Referenced by make_property().

◆ register_class()

void cdef_manager::register_class ( const cdef_class cls)
inline

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

References cdef_class::get_name().

Referenced by make_class().

◆ register_package()

void cdef_manager::register_package ( const cdef_package pkg)
inline

Definition at line 79 of file cdef-manager.h.

References cdef_package::get_name().

Referenced by make_package().

◆ unregister_class()

void cdef_manager::unregister_class ( const cdef_class cls)
inline

Definition at line 74 of file cdef-manager.h.

References cdef_class::get_name().

◆ unregister_package()

void cdef_manager::unregister_package ( const cdef_package pkg)
inline

Definition at line 84 of file cdef-manager.h.

References cdef_package::get_name().


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