GNU Octave
4.0.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
|
#include "ov-classdef.h"
Classes | |
class | cdef_class_rep |
Public Types | |
enum | { property_normal, property_inherited, property_all } |
Static Public Member Functions | |
static cdef_class | make_meta_class (tree_classdef *t, bool is_at_folder=false) |
static const cdef_class & | meta_class (void) |
static const cdef_class & | meta_method (void) |
static const cdef_class & | meta_package (void) |
static const cdef_class & | meta_property (void) |
Protected Member Functions | |
void | make_unique (int ignore_copies) |
Private Member Functions | |
cdef_class_rep * | get_rep (void) |
const cdef_class_rep * | get_rep (void) const |
Static Private Attributes | |
static cdef_class | _meta_class = cdef_class () |
static cdef_class | _meta_method = cdef_class () |
static cdef_class | _meta_package = cdef_class () |
static cdef_class | _meta_property = cdef_class () |
Friends | |
void | install_classdef (void) |
bool | operator!= (const cdef_class &, const cdef_class &) |
bool | operator< (const cdef_class &, const cdef_class &) |
bool | operator== (const cdef_class &, const cdef_class &) |
Definition at line 613 of file ov-classdef.h.
anonymous enum |
Enumerator | |
---|---|
property_normal | |
property_inherited | |
property_all |
Definition at line 879 of file ov-classdef.h.
|
inline |
Definition at line 772 of file ov-classdef.h.
Referenced by cdef_manager::do_find_class(), cdef_manager::find_class(), cdef_object_rep::get_class(), cdef_object_base::get_class(), and make_meta_class().
|
inline |
Definition at line 775 of file ov-classdef.h.
References cdef_object::get_rep().
|
inline |
Definition at line 780 of file ov-classdef.h.
|
inline |
Definition at line 783 of file ov-classdef.h.
References cdef_object::class_name(), and error().
|
inlineinherited |
Definition at line 249 of file ov-classdef.h.
References cdef_object_rep::array_value(), and cdef_object::rep.
Referenced by cdef_object::map_value(), and cdef_object_array::subsasgn().
|
inlineinherited |
Definition at line 224 of file ov-classdef.h.
References cdef_object_rep::class_name(), and cdef_object::rep.
Referenced by cdef_class(), cdef_method::cdef_method(), cdef_package::cdef_package(), cdef_property::cdef_property(), make_meta_class(), cdef_object_array::subsasgn(), and ctor_analyzer::visit_funcall().
|
inlineinherited |
Definition at line 227 of file ov-classdef.h.
References cdef_object::cdef_object(), cdef_object_rep::clone(), and cdef_object::rep.
Referenced by octave_classdef::clone(), value_cdef_object::copy(), and cdef_object::make_unique().
|
inline |
Definition at line 847 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_class::cdef_class_rep::meta_subsref().
|
inline |
Definition at line 850 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_class::cdef_class_rep::construct(), cdef_object_array::fill_empty_values(), and cdef_object_array::subsasgn().
|
inlineinherited |
Definition at line 238 of file ov-classdef.h.
References cdef_object::cdef_object(), cdef_object_rep::copy(), and cdef_object::rep.
Referenced by cdef_object_array::fill_empty_values().
|
inline |
Definition at line 836 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_class::cdef_class_rep::delete_object().
|
inlineinherited |
Definition at line 233 of file ov-classdef.h.
References cdef_object_rep::dims(), and cdef_object::rep.
|
inlineinherited |
Definition at line 230 of file ov-classdef.h.
References cdef_object::cdef_object(), cdef_object_rep::empty_clone(), and cdef_object::rep.
Referenced by octave_classdef::empty_clone().
|
inline |
Definition at line 1239 of file ov-classdef.h.
References cdef_class::cdef_class_rep::find_method(), and get_rep().
Referenced by check_access(), class_fevalStatic(), cdef_manager::do_find_method_symbol(), octave_classdef_superclass_ref::do_multi_index_op(), cdef_class::cdef_class_rep::find_method(), make_meta_class(), cdef_class::cdef_class_rep::meta_subsref(), octave_classdef::print(), octave_classdef::print_with_name(), cdef_class::cdef_class_rep::run_constructor(), octave_classdef::subsasgn(), cdef_object_scalar::subsref(), and octave_classdef::subsref().
|
inline |
Definition at line 1243 of file ov-classdef.h.
References cdef_class::cdef_class_rep::find_property(), and get_rep().
Referenced by check_access(), class_getConstant(), cdef_class::cdef_class_rep::find_property(), cdef_class::cdef_class_rep::meta_subsref(), cdef_object_scalar::subsasgn(), and cdef_object_scalar::subsref().
|
inlineinherited |
Definition at line 254 of file ov-classdef.h.
References cdef_object_rep::get(), and cdef_object::rep.
Referenced by check_access(), class_get_inferiorclasses(), class_get_superclasses(), cdef_property::cdef_property_rep::get_value(), gripe_method_access(), gripe_property_access(), is_superclass(), make_meta_class(), cdef_object_scalar::mark_for_construction(), property_get_defaultvalue(), and cdef_property::cdef_property_rep::set_value().
|
inlineinherited |
Definition at line 1184 of file ov-classdef.h.
References cdef_object_rep::get_class(), and cdef_object::rep.
Referenced by cdef_class::cdef_class_rep::delete_object(), Fmetaclass(), cdef_object::map_value(), octave_classdef::print(), octave_classdef::print_with_name(), cdef_object_array::subsasgn(), octave_classdef::subsasgn(), and octave_classdef::subsref().
|
inline |
Definition at line 844 of file ov-classdef.h.
Referenced by install_classdef(), and tree_classdef::make_meta_class().
|
inline |
Definition at line 827 of file ov-classdef.h.
References cdef_object::get_rep().
octave_function * cdef_class::get_method_function | ( | const std::string & | nm | ) |
Definition at line 3118 of file ov-classdef.cc.
|
inline |
Definition at line 804 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by class_get_methods(), and make_meta_class().
|
inline |
Definition at line 830 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by check_access(), cdef_method::cdef_method_rep::check_access(), cdef_property::cdef_property_rep::check_get_access(), cdef_method::cdef_method_rep::check_method(), cdef_property::cdef_property_rep::check_set_access(), cdef_object_rep::class_name(), cdef_class::cdef_class_rep::construct_object(), octave_classdef_superclass_ref::do_multi_index_op(), cdef_manager::do_register_class(), cdef_manager::do_unregister_class(), cdef_package::cdef_package_rep::find(), cdef_property::cdef_property_rep::get_value(), octave_classdef_meta::is_classdef_constructor(), make_function_of_class(), make_method(), make_property(), cdef_object_scalar::mark_for_construction(), cdef_package::cdef_package_rep::meta_subsref(), cdef_class::cdef_class_rep::run_constructor(), cdef_property::cdef_property_rep::set_value(), handle_cdef_object::~handle_cdef_object(), and value_cdef_object::~value_cdef_object().
|
inline |
Definition at line 818 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_object_rep::map_keys().
|
inline |
Definition at line 811 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by class_get_properties().
|
inline |
Definition at line 815 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_class::cdef_class_rep::get_properties(), and cdef_object::map_value().
|
inlineprivate |
Definition at line 887 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_method::cdef_method(), cdef_package::cdef_package(), cdef_property::cdef_property(), cdef_method::check_access(), cdef_property::check_get_access(), cdef_property::check_set_access(), cdef_method::execute(), cdef_package::find(), find_method(), cdef_class::cdef_class_rep::find_methods(), cdef_class::cdef_class_rep::find_names(), cdef_class::cdef_class_rep::find_properties(), find_property(), cdef_package::get_classes(), cdef_method::get_function(), cdef_package::get_functions(), cdef_property::get_name(), cdef_method::get_name(), cdef_package::get_name(), cdef_package::get_packages(), cdef_property::get_value(), cdef_package::install_class(), cdef_package::install_function(), cdef_package::install_package(), cdef_property::is_constant(), cdef_method::is_constructor(), cdef_method::is_external(), cdef_method::is_static(), cdef_method::mark_as_external(), operator<(), operator==(), cdef_method::set_function(), and cdef_property::set_value().
|
inlineprivate |
Definition at line 890 of file ov-classdef.h.
References cdef_object::get_rep().
|
inline |
Definition at line 853 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_class::cdef_class_rep::construct_object().
|
inline |
Definition at line 801 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by install_classdef(), and make_meta_class().
|
inline |
Definition at line 808 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by install_classdef(), and make_meta_class().
|
inlineinherited |
Definition at line 295 of file ov-classdef.h.
References cdef_object::rep.
Referenced by is_method_executing(), and cdef_object_array::subsasgn().
|
inline |
Definition at line 820 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_class::cdef_class_rep::construct_object().
|
inlineinherited |
Definition at line 241 of file ov-classdef.h.
References cdef_object_rep::is_array(), and cdef_object::rep.
Referenced by cdef_object::map_value(), and cdef_object_array::subsasgn().
|
inline |
Definition at line 833 of file ov-classdef.h.
Referenced by cdef_manager::do_find_class().
|
inlineinherited |
Definition at line 587 of file ov-classdef.h.
References cdef_object::get_rep().
|
inlineinherited |
Definition at line 282 of file ov-classdef.h.
References cdef_object_rep::is_constructed(), and cdef_object::rep.
Referenced by cdef_property::cdef_property_rep::get_value(), and cdef_property::cdef_property_rep::set_value().
|
inlineinherited |
Definition at line 284 of file ov-classdef.h.
References cdef_object_rep::is_constructed_for(), and cdef_object::rep.
|
inline |
Definition at line 862 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_class::cdef_class_rep::construct_object().
|
inlineinherited |
Definition at line 245 of file ov-classdef.h.
References cdef_object_rep::is_handle_object(), and cdef_object::rep.
Referenced by cdef_object_scalar::subsasgn().
|
inline |
Definition at line 867 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_class::cdef_class_rep::construct_object().
|
inlineinherited |
Definition at line 247 of file ov-classdef.h.
References cdef_object_rep::is_meta_object(), and cdef_object::rep.
|
inlineinherited |
Definition at line 591 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_method::cdef_method().
|
inlineinherited |
Definition at line 593 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_package::cdef_package().
|
inlineinherited |
Definition at line 287 of file ov-classdef.h.
References cdef_object_rep::is_partially_constructed_for(), and cdef_object::rep.
Referenced by cdef_property::cdef_property_rep::get_value(), and cdef_property::cdef_property_rep::set_value().
|
inlineinherited |
Definition at line 589 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_property::cdef_property().
|
inline |
Definition at line 822 of file ov-classdef.h.
References cdef_object::get_rep().
|
inlineinherited |
Definition at line 243 of file ov-classdef.h.
References cdef_object_rep::is_value_object(), and cdef_object::rep.
|
inlineinherited |
Definition at line 235 of file ov-classdef.h.
References cdef_object::cdef_object(), cdef_object_rep::make_array(), and cdef_object::rep.
|
static |
Definition at line 2795 of file ov-classdef.cc.
References tree_classdef::attribute_list(), attribute_value_to_string(), octave_base_list< elt_type >::begin(), tree_classdef::body(), octave_value::bool_value(), cdef_class(), cdef_object::class_name(), compute_attribute_value(), octave_base_list< elt_type >::end(), error(), error_state, find_method(), cdef_manager::find_package(), octave_value::function_value(), cdef_object::get(), get_methods(), tree_classdef::ident(), install_method(), install_property(), lookup_class(), make_class(), make_fcn_handle(), make_function_of_class(), make_method(), make_property(), load_path::methods(), tree_classdef_body::methods_list(), tree_identifier::name(), octave_function::name(), cdef_object::ok(), tree_classdef::package_name(), tree_classdef_body::properties_list(), cdef_object::put(), octave_user_function::stash_function_name(), tree_classdef::superclass_list(), and to_ov().
Referenced by install_classdef(), and tree_classdef::make_meta_class().
|
inlineprotectedinherited |
Definition at line 300 of file ov-classdef.h.
References cdef_object::clone(), cdef_object_rep::refcount, and cdef_object::rep.
Referenced by cdef_object::subsasgn().
|
inlineinherited |
Definition at line 271 of file ov-classdef.h.
References cdef_object_rep::map_keys(), and cdef_object::rep.
|
inherited |
Definition at line 1336 of file ov-classdef.cc.
References cdef_object::array_value(), Array< T >::dims(), error_state, cdef_object::get_class(), get_property_map(), cdef_object::is_array(), Array< T >::numel(), cdef_object::ok(), property_all, octave_map::setfield(), and warning_with_id().
|
inlineinherited |
Definition at line 290 of file ov-classdef.h.
References cdef_object_rep::mark_as_constructed(), and cdef_object::rep.
Referenced by cdef_class::cdef_class_rep::run_constructor().
|
inlineinherited |
Definition at line 292 of file ov-classdef.h.
References cdef_object_rep::mark_as_constructed(), and cdef_object::rep.
|
inline |
Definition at line 859 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by make_class().
|
inline |
Definition at line 865 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by make_meta_class().
|
inlineinherited |
Definition at line 279 of file ov-classdef.h.
References cdef_object_rep::mark_for_construction(), and cdef_object::rep.
Referenced by cdef_class::cdef_class_rep::initialize_object().
|
inlinestatic |
Definition at line 869 of file ov-classdef.h.
Referenced by cdef_class::cdef_class_rep::construct_object(), install_classdef(), and make_class().
Definition at line 602 of file ov-classdef.h.
References cdef_object::get_rep().
|
inlinestatic |
Definition at line 871 of file ov-classdef.h.
Referenced by cdef_class::cdef_class_rep::construct_object(), install_classdef(), and make_method().
|
inlinestatic |
Definition at line 872 of file ov-classdef.h.
Referenced by cdef_class::cdef_class_rep::construct_object(), install_classdef(), and make_package().
|
inlinestatic |
Definition at line 870 of file ov-classdef.h.
Referenced by cdef_class::cdef_class_rep::construct_object(), install_classdef(), and make_property().
|
inlineinherited |
Definition at line 600 of file ov-classdef.h.
References cdef_object::get_rep().
|
inlineinherited |
Definition at line 596 of file ov-classdef.h.
References cdef_object::get_rep().
|
inlineinherited |
Definition at line 277 of file ov-classdef.h.
References cdef_object_rep::is_valid(), and cdef_object::rep.
Referenced by check_access(), class_fevalStatic(), class_getConstant(), cdef_class::cdef_class_rep::construct(), cdef_class::cdef_class_rep::construct_object(), cdef_manager::do_find_class(), cdef_manager::do_find_method_symbol(), cdef_manager::do_find_package(), cdef_manager::do_find_package_symbol(), octave_classdef_superclass_ref::do_multi_index_op(), cdef_object_array::fill_empty_values(), cdef_class::cdef_class_rep::find_method(), cdef_class::cdef_class_rep::find_property(), in_class_method(), octave_classdef::is_instance_of(), tree_classdef::make_meta_class(), make_meta_class(), cdef_object_rep::map_keys(), cdef_object::map_value(), cdef_class::cdef_class_rep::meta_subsref(), octave_classdef::print(), octave_classdef::print_with_name(), cdef_object_base::register_object(), cdef_class::cdef_class_rep::run_constructor(), cdef_object_base::set_class(), cdef_object_array::subsasgn(), cdef_object_scalar::subsasgn(), octave_classdef::subsasgn(), cdef_object_scalar::subsref(), octave_classdef::subsref(), to_ov(), cdef_object_base::unregister_object(), and ctor_analyzer::visit_funcall().
|
inline |
Definition at line 792 of file ov-classdef.h.
References cdef_object::operator=().
|
inlineinherited |
Definition at line 251 of file ov-classdef.h.
References cdef_object_rep::put(), and cdef_object::rep.
Referenced by cdef_class::cdef_class_rep::initialize_object(), make_class(), make_meta_class(), make_meta_class(), make_method(), make_package(), make_property(), cdef_class::cdef_class_rep::set_name(), cdef_property::cdef_property_rep::set_name(), cdef_method::cdef_method_rep::set_name(), cdef_package::cdef_package_rep::set_name(), and cdef_property::cdef_property_rep::set_value().
|
inline |
Definition at line 874 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_object_base::register_object().
|
inline |
Definition at line 856 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_class::cdef_class_rep::construct_object(), octave_classdef_superclass_ref::do_multi_index_op(), and cdef_class::cdef_class_rep::run_constructor().
|
inlineinherited |
Definition at line 222 of file ov-classdef.h.
References cdef_object::rep, and cdef_object_rep::set_class().
Referenced by cdef_class::cdef_class_rep::construct_object(), cdef_class::cdef_class_rep::delete_object(), install_classdef(), make_class(), make_method(), make_package(), make_property(), cdef_object_scalar::subsasgn(), cdef_object_array::subsref(), and cdef_object_scalar::subsref().
|
inline |
Definition at line 824 of file ov-classdef.h.
References cdef_object::get_rep().
|
inlineinherited |
Definition at line 264 of file ov-classdef.h.
References cdef_object::make_unique(), cdef_object::rep, and cdef_object_rep::subsasgn().
Referenced by cdef_object_array::subsasgn(), and cdef_object_scalar::subsasgn().
|
inlineinherited |
Definition at line 258 of file ov-classdef.h.
References cdef_object::rep, and cdef_object_rep::subsref().
Referenced by cdef_object_scalar::subsref(), and octave_classdef::subsref().
|
inline |
Definition at line 876 of file ov-classdef.h.
References cdef_object::get_rep().
Referenced by cdef_object_base::unregister_object().
|
friend |
Definition at line 3695 of file ov-classdef.cc.
|
friend |
Definition at line 912 of file ov-classdef.h.
|
friend |
Definition at line 917 of file ov-classdef.h.
|
friend |
Definition at line 907 of file ov-classdef.h.
|
staticprivate |
Definition at line 898 of file ov-classdef.h.
|
staticprivate |
Definition at line 900 of file ov-classdef.h.
|
staticprivate |
Definition at line 901 of file ov-classdef.h.
|
staticprivate |
Definition at line 899 of file ov-classdef.h.