26 #if ! defined (octave_cdef_manager_h)
27 #define octave_cdef_manager_h 1
29 #include "octave-config.h"
56 bool error_if_not_found =
true,
57 bool load_if_not_found =
true);
60 const std::string& class_name);
63 bool error_if_not_found =
true,
64 bool load_if_not_found =
true);
96 const std::list<cdef_class>& super_list = std::list<cdef_class> ());
104 const std::string&
name,
106 const std::string& get_access =
"public",
108 const std::string& set_access =
"public");
111 const std::string&
name);
114 const std::string&
name,
116 const std::string& m_access =
"public",
117 bool is_static =
false);
120 const std::string&
name,
122 const std::string& m_access =
"public",
123 bool is_static =
false);
126 const std::string&
name,
128 const std::string& m_access =
"public",
129 bool is_static =
false);
132 const std::string& parent =
"");
135 const std::string&
name)
const;
std::string get_name(void) const
octave_value find_method_symbol(const std::string &method_name, const std::string &class_name)
std::map< std::string, cdef_package > m_all_packages
const cdef_package & meta(void) const
cdef_class find_class(const std::string &name, bool error_if_not_found=true, bool load_if_not_found=true)
interpreter & m_interpreter
std::map< std::string, cdef_class > m_all_classes
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_class & meta_package(void) const
cdef_manager(const cdef_manager &)=delete
void register_package(const cdef_package &pkg)
cdef_class make_meta_class(const std::string &name, const cdef_class &super)
void unregister_class(const cdef_class &cls)
cdef_package make_package(const std::string &nm, const std::string &parent="")
cdef_class m_meta_package
cdef_manager(interpreter &interp)
void register_class(const cdef_class &cls)
octave_value find_package_symbol(const std::string &pack_name)
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)
const cdef_class & meta_property(void) const
cdef_class m_meta_property
const cdef_class & meta_method(void) const
cdef_class make_class(const std::string &name, const std::list< cdef_class > &super_list=std::list< cdef_class >())
cdef_package find_package(const std::string &name, bool error_if_not_found=true, bool load_if_not_found=true)
void unregister_package(const cdef_package &pkg)
cdef_manager & operator=(const cdef_manager &)=delete
~cdef_manager(void)=default
cdef_property make_attribute(const cdef_class &cls, const std::string &name)
const cdef_class & meta_class(void) const
octave_value find_method(const std::string &class_name, const std::string &name) const
std::string get_name(void) const
octave_value_list(* fcn)(const octave_value_list &, int)
octave_value_list(* meth)(octave::interpreter &, const octave_value_list &, int)