GNU Octave  4.0.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
cdef_manager Class Reference

#include "ov-classdef.h"

Collaboration diagram for cdef_manager:
Collaboration graph
[legend]

Static Public Member Functions

static cdef_class find_class (const std::string &name, bool error_if_not_found=true, bool load_if_not_found=true)
 
static octave_functionfind_method_symbol (const std::string &method_name, const std::string &class_name)
 
static cdef_package find_package (const std::string &name, bool error_if_not_found=true, bool load_if_not_found=true)
 
static octave_functionfind_package_symbol (const std::string &pack_name)
 
static void register_class (const cdef_class &cls)
 
static void register_package (const cdef_package &pkg)
 
static void unregister_class (const cdef_class &cls)
 
static void unregister_package (const cdef_package &pkg)
 

Private Member Functions

 cdef_manager (void)
 
 cdef_manager (const cdef_manager &)
 
 ~cdef_manager (void)
 
cdef_class do_find_class (const std::string &name, bool error_if_not_found, bool load_if_not_found)
 
octave_functiondo_find_method_symbol (const std::string &method_name, const std::string &class_name)
 
cdef_package do_find_package (const std::string &name, bool error_if_not_found, bool load_if_not_found)
 
octave_functiondo_find_package_symbol (const std::string &pack_name)
 
void do_register_class (const cdef_class &cls)
 
void do_register_package (const cdef_package &pkg)
 
void do_unregister_class (const cdef_class &cls)
 
void do_unregister_package (const cdef_package &pkg)
 
cdef_manageroperator= (const cdef_manager &)
 

Static Private Member Functions

static void cleanup_instance (void)
 
static void create_instance (void)
 
static bool instance_ok (void)
 

Private Attributes

std::map< std::string, cdef_classall_classes
 
std::map< std::string,
cdef_package
all_packages
 

Static Private Attributes

static cdef_managerinstance = 0
 

Detailed Description

Definition at line 1542 of file ov-classdef.h.

Constructor & Destructor Documentation

cdef_manager::cdef_manager ( void  )
inlineprivate

Definition at line 1612 of file ov-classdef.h.

cdef_manager::cdef_manager ( const cdef_manager )
private
cdef_manager::~cdef_manager ( void  )
inlineprivate

Definition at line 1618 of file ov-classdef.h.

Member Function Documentation

static void cdef_manager::cleanup_instance ( void  )
inlinestaticprivate

Definition at line 1639 of file ov-classdef.h.

void cdef_manager::create_instance ( void  )
staticprivate

Definition at line 3865 of file ov-classdef.cc.

References singleton_cleanup_list::add().

cdef_class cdef_manager::do_find_class ( const std::string &  name,
bool  error_if_not_found,
bool  load_if_not_found 
)
private
octave_function * cdef_manager::do_find_method_symbol ( const std::string &  method_name,
const std::string &  class_name 
)
private

Definition at line 3926 of file ov-classdef.cc.

References cdef_class::find_method(), and cdef_object::ok().

cdef_package cdef_manager::do_find_package ( const std::string &  name,
bool  error_if_not_found,
bool  load_if_not_found 
)
private

Definition at line 3945 of file ov-classdef.cc.

References error(), load_path::find_package(), make_package(), and cdef_object::ok().

octave_function * cdef_manager::do_find_package_symbol ( const std::string &  pack_name)
private

Definition at line 3984 of file ov-classdef.cc.

References cdef_object::ok().

void cdef_manager::do_register_class ( const cdef_class cls)
inlineprivate

Definition at line 1658 of file ov-classdef.h.

References cdef_class::get_name().

void cdef_manager::do_register_package ( const cdef_package pkg)
inlineprivate

Definition at line 1664 of file ov-classdef.h.

References cdef_package::get_name().

void cdef_manager::do_unregister_class ( const cdef_class cls)
inlineprivate

Definition at line 1661 of file ov-classdef.h.

References cdef_class::get_name().

void cdef_manager::do_unregister_package ( const cdef_package pkg)
inlineprivate

Definition at line 1667 of file ov-classdef.h.

References cdef_package::get_name().

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

Definition at line 1547 of file ov-classdef.h.

References cdef_class::cdef_class().

Referenced by lookup_class().

static octave_function* cdef_manager::find_method_symbol ( const std::string &  method_name,
const std::string &  class_name 
)
inlinestatic
static cdef_package cdef_manager::find_package ( const std::string &  name,
bool  error_if_not_found = true,
bool  load_if_not_found = true 
)
inlinestatic
static octave_function* cdef_manager::find_package_symbol ( const std::string &  pack_name)
inlinestatic

Definition at line 1578 of file ov-classdef.h.

Referenced by symbol_table::fcn_info::fcn_info_rep::find_package().

static bool cdef_manager::instance_ok ( void  )
inlinestaticprivate

Definition at line 1622 of file ov-classdef.h.

References error().

cdef_manager& cdef_manager::operator= ( const cdef_manager )
private
static void cdef_manager::register_class ( const cdef_class cls)
inlinestatic

Definition at line 1586 of file ov-classdef.h.

Referenced by make_class().

static void cdef_manager::register_package ( const cdef_package pkg)
inlinestatic

Definition at line 1598 of file ov-classdef.h.

Referenced by make_package().

static void cdef_manager::unregister_class ( const cdef_class cls)
inlinestatic

Definition at line 1592 of file ov-classdef.h.

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

static void cdef_manager::unregister_package ( const cdef_package pkg)
inlinestatic

Definition at line 1604 of file ov-classdef.h.

Member Data Documentation

std::map<std::string, cdef_class> cdef_manager::all_classes
private

Definition at line 1676 of file ov-classdef.h.

std::map<std::string, cdef_package> cdef_manager::all_packages
private

Definition at line 1679 of file ov-classdef.h.

cdef_manager * cdef_manager::instance = 0
staticprivate

Definition at line 1673 of file ov-classdef.h.


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