#include "ov-typeinfo.h"
Public Types | |
typedef octave_value(* | assign_op_fcn) (octave_base_value &, const octave_value_list &, const octave_base_value &) |
typedef octave_value(* | assignany_op_fcn) (octave_base_value &, const octave_value_list &, const octave_value &) |
typedef octave_value(* | binary_class_op_fcn) (const octave_value &, const octave_value &) |
typedef octave_value(* | binary_op_fcn) (const octave_base_value &, const octave_base_value &) |
typedef octave_value(* | cat_op_fcn) (octave_base_value &, const octave_base_value &, const Array< octave_idx_type > &ra_idx) |
typedef void(* | non_const_unary_op_fcn) (octave_base_value &) |
typedef octave_value(* | unary_class_op_fcn) (const octave_value &) |
typedef octave_value(* | unary_op_fcn) (const octave_base_value &) |
Private Attributes | |
Array< void * > | assign_ops |
Array< void * > | assignany_ops |
Array< void * > | binary_class_ops |
Array< void * > | binary_ops |
Array< void * > | cat_ops |
Array< void * > | compound_binary_class_ops |
Array< void * > | compound_binary_ops |
Array< void * > | non_const_unary_ops |
int | num_types |
Array< int > | pref_assign_conv |
Array< std::string > | types |
Array< void * > | unary_class_ops |
Array< void * > | unary_ops |
Array< octave_value * > | vals |
Array< void * > | widening_ops |
Definition at line 39 of file ov-typeinfo.h.
typedef octave_value(* octave::type_info::assign_op_fcn) (octave_base_value &, const octave_value_list &, const octave_base_value &) |
Definition at line 60 of file ov-typeinfo.h.
typedef octave_value(* octave::type_info::assignany_op_fcn) (octave_base_value &, const octave_value_list &, const octave_value &) |
Definition at line 63 of file ov-typeinfo.h.
typedef octave_value(* octave::type_info::binary_class_op_fcn) (const octave_value &, const octave_value &) |
Definition at line 50 of file ov-typeinfo.h.
typedef octave_value(* octave::type_info::binary_op_fcn) (const octave_base_value &, const octave_base_value &) |
Definition at line 53 of file ov-typeinfo.h.
typedef octave_value(* octave::type_info::cat_op_fcn) (octave_base_value &, const octave_base_value &, const Array< octave_idx_type > &ra_idx) |
Definition at line 56 of file ov-typeinfo.h.
typedef void(* octave::type_info::non_const_unary_op_fcn) (octave_base_value &) |
Definition at line 47 of file ov-typeinfo.h.
typedef octave_value(* octave::type_info::unary_class_op_fcn) (const octave_value &) |
Definition at line 43 of file ov-typeinfo.h.
typedef octave_value(* octave::type_info::unary_op_fcn) (const octave_base_value &) |
Definition at line 45 of file ov-typeinfo.h.
|
explicit |
Definition at line 64 of file ov-typeinfo.cc.
References install_ops(), and install_types().
|
delete |
|
default |
octave_scalar_map octave::type_info::assign_ops_map | ( | void | ) | const |
Definition at line 692 of file ov-typeinfo.cc.
References octave_value::assign_op_as_string(), assign_ops, Array< T >::columns(), i, k, min(), octave_value::num_assign_ops, num_types, retval, and Array< T >::xelem().
Referenced by installed_type_info().
octave_scalar_map octave::type_info::assignany_ops_map | ( | void | ) | const |
Definition at line 717 of file ov-typeinfo.cc.
References octave_value::assign_op_as_string(), assignany_ops, Array< T >::columns(), i, min(), octave_value::num_assign_ops, num_types, retval, and Array< T >::xelem().
Referenced by installed_type_info().
octave_scalar_map octave::type_info::binary_ops_map | ( | void | ) | const |
Definition at line 640 of file ov-typeinfo.cc.
References octave_value::binary_op_as_string(), binary_ops, Array< T >::columns(), i, k, min(), octave_value::num_binary_ops, num_types, retval, and Array< T >::xelem().
Referenced by installed_type_info().
octave_scalar_map octave::type_info::compound_binary_ops_map | ( | void | ) | const |
Definition at line 665 of file ov-typeinfo.cc.
References octave_value::binary_op_fcn_name(), Array< T >::columns(), compound_binary_ops, i, k, min(), octave_value::num_compound_binary_ops, num_types, retval, and Array< T >::xelem().
Referenced by installed_type_info().
|
inline |
Definition at line 123 of file ov-typeinfo.h.
References f, and register_assign_op().
|
inline |
Definition at line 129 of file ov-typeinfo.h.
References f, and register_assignany_op().
|
inline |
Definition at line 94 of file ov-typeinfo.h.
References f, and register_binary_class_op().
|
inline |
Definition at line 106 of file ov-typeinfo.h.
References f, and register_binary_class_op().
|
inline |
Definition at line 100 of file ov-typeinfo.h.
References f, and register_binary_op().
|
inline |
Definition at line 112 of file ov-typeinfo.h.
References f, and register_binary_op().
|
inline |
Definition at line 118 of file ov-typeinfo.h.
References f, and register_cat_op().
|
inline |
Definition at line 88 of file ov-typeinfo.h.
References f, register_non_const_unary_op(), and t.
|
inline |
Definition at line 135 of file ov-typeinfo.h.
References register_pref_assign_conv().
|
inline |
Definition at line 77 of file ov-typeinfo.h.
References f, and register_unary_class_op().
|
inline |
Definition at line 83 of file ov-typeinfo.h.
References f, register_unary_op(), and t.
|
inline |
Definition at line 140 of file ov-typeinfo.h.
References f, register_widening_op(), and t.
octave_scalar_map octave::type_info::installed_type_info | ( | void | ) | const |
Definition at line 741 of file ov-typeinfo.cc.
References as_bool_nd_array(), as_nd_array(), assign_ops_map(), assignany_ops_map(), binary_ops_map(), cat_ops, compound_binary_ops_map(), installed_type_names(), non_const_unary_ops_map(), pref_assign_conv, retval, unary_ops_map(), and widening_ops.
Referenced by octave_value_typeinfo::installed_type_info().
string_vector octave::type_info::installed_type_names | ( | void | ) | const |
Definition at line 579 of file ov-typeinfo.cc.
References i, num_types, retval, and types.
Referenced by installed_type_info(), and octave_value_typeinfo::installed_type_names().
type_info::assign_op_fcn octave::type_info::lookup_assign_op | ( | octave_value::assign_op | op, |
int | t_lhs, | ||
int | t_rhs | ||
) |
Definition at line 551 of file ov-typeinfo.cc.
References assign_ops, Array< T >::checkelem(), and f.
Referenced by octave_value_typeinfo::lookup_assign_op(), octave_base_value::numeric_assign(), and register_assign_op().
type_info::assignany_op_fcn octave::type_info::lookup_assignany_op | ( | octave_value::assign_op | op, |
int | t_lhs | ||
) |
Definition at line 559 of file ov-typeinfo.cc.
References assignany_ops, Array< T >::checkelem(), and f.
Referenced by octave_value_typeinfo::lookup_assignany_op(), and register_assignany_op().
type_info::binary_class_op_fcn octave::type_info::lookup_binary_class_op | ( | octave_value::binary_op | op | ) |
Definition at line 515 of file ov-typeinfo.cc.
References binary_class_ops, Array< T >::checkelem(), and f.
Referenced by octave_value_typeinfo::lookup_binary_class_op(), and register_binary_class_op().
type_info::binary_class_op_fcn octave::type_info::lookup_binary_class_op | ( | octave_value::compound_binary_op | op | ) |
Definition at line 529 of file ov-typeinfo.cc.
References Array< T >::checkelem(), compound_binary_class_ops, and f.
type_info::binary_op_fcn octave::type_info::lookup_binary_op | ( | octave_value::binary_op | op, |
int | t1, | ||
int | t2 | ||
) |
Definition at line 522 of file ov-typeinfo.cc.
References binary_ops, Array< T >::checkelem(), and f.
Referenced by octave_value_typeinfo::lookup_binary_op(), and register_binary_op().
type_info::binary_op_fcn octave::type_info::lookup_binary_op | ( | octave_value::compound_binary_op | op, |
int | t1, | ||
int | t2 | ||
) |
Definition at line 536 of file ov-typeinfo.cc.
References Array< T >::checkelem(), compound_binary_ops, and f.
type_info::cat_op_fcn octave::type_info::lookup_cat_op | ( | int | t1, |
int | t2 | ||
) |
Definition at line 544 of file ov-typeinfo.cc.
References cat_ops, Array< T >::checkelem(), and f.
Referenced by octave_value_typeinfo::lookup_cat_op(), and register_cat_op().
type_info::non_const_unary_op_fcn octave::type_info::lookup_non_const_unary_op | ( | octave_value::unary_op | op, |
int | t | ||
) |
Definition at line 508 of file ov-typeinfo.cc.
References Array< T >::checkelem(), f, non_const_unary_ops, and t.
Referenced by octave_value::do_non_const_unary_op(), octave_value_typeinfo::lookup_non_const_unary_op(), and register_non_const_unary_op().
int octave::type_info::lookup_pref_assign_conv | ( | int | t_lhs, |
int | t_rhs | ||
) |
Definition at line 566 of file ov-typeinfo.cc.
References Array< T >::checkelem(), and pref_assign_conv.
Referenced by octave_value_typeinfo::lookup_pref_assign_conv(), octave_base_value::numeric_assign(), and register_pref_assign_conv().
octave_value octave::type_info::lookup_type | ( | const std::string & | nm | ) |
Definition at line 476 of file ov-typeinfo.cc.
References i, octave_value::make_unique(), nm, num_types, retval, types, and vals.
Referenced by hdf5_read_next_data_internal(), octave_value_typeinfo::lookup_type(), read_binary_data(), and read_text_data().
type_info::unary_class_op_fcn octave::type_info::lookup_unary_class_op | ( | octave_value::unary_op | op | ) |
Definition at line 494 of file ov-typeinfo.cc.
References Array< T >::checkelem(), f, and unary_class_ops.
Referenced by do_unary_op(), octave_value_typeinfo::lookup_unary_class_op(), and register_unary_class_op().
type_info::unary_op_fcn octave::type_info::lookup_unary_op | ( | octave_value::unary_op | op, |
int | t | ||
) |
Definition at line 501 of file ov-typeinfo.cc.
References Array< T >::checkelem(), f, t, and unary_ops.
Referenced by do_unary_op(), octave_value_typeinfo::lookup_unary_op(), and register_unary_op().
octave_base_value::type_conv_fcn octave::type_info::lookup_widening_op | ( | int | t, |
int | t_result | ||
) |
Definition at line 572 of file ov-typeinfo.cc.
References Array< T >::checkelem(), f, t, and widening_ops.
Referenced by octave_value_typeinfo::lookup_widening_op(), octave_base_value::numeric_assign(), and register_widening_op().
octave_scalar_map octave::type_info::non_const_unary_ops_map | ( | void | ) | const |
Definition at line 615 of file ov-typeinfo.cc.
References Array< T >::columns(), i, min(), non_const_unary_ops, num_types, octave_value::num_unary_ops, retval, octave_value::unary_op_as_string(), and Array< T >::xelem().
Referenced by installed_type_info().
bool octave::type_info::register_assign_op | ( | octave_value::assign_op | op, |
int | t_lhs, | ||
int | t_rhs, | ||
type_info::assign_op_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 370 of file ov-typeinfo.cc.
References octave_value::assign_op_as_string(), assign_ops, Array< T >::checkelem(), f, lookup_assign_op(), string, types, and warning().
Referenced by install_assign_op(), and octave_value_typeinfo::register_assign_op().
bool octave::type_info::register_assignany_op | ( | octave_value::assign_op | op, |
int | t_lhs, | ||
type_info::assignany_op_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 399 of file ov-typeinfo.cc.
References octave_value::assign_op_as_string(), assignany_ops, Array< T >::checkelem(), f, lookup_assignany_op(), string, types, and warning().
Referenced by install_assignany_op(), and octave_value_typeinfo::register_assignany_op().
bool octave::type_info::register_binary_class_op | ( | octave_value::binary_op | op, |
type_info::binary_class_op_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 236 of file ov-typeinfo.cc.
References binary_class_ops, octave_value::binary_op_as_string(), Array< T >::checkelem(), f, lookup_binary_class_op(), string, and warning().
Referenced by install_binary_class_op(), and octave_value_typeinfo::register_binary_class_op().
bool octave::type_info::register_binary_class_op | ( | octave_value::compound_binary_op | op, |
type_info::binary_class_op_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 292 of file ov-typeinfo.cc.
References octave_value::binary_op_fcn_name(), Array< T >::checkelem(), compound_binary_class_ops, f, lookup_binary_class_op(), string, and warning().
bool octave::type_info::register_binary_op | ( | octave_value::binary_op | op, |
int | t1, | ||
int | t2, | ||
type_info::binary_op_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 262 of file ov-typeinfo.cc.
References octave_value::binary_op_as_string(), binary_ops, Array< T >::checkelem(), f, lookup_binary_op(), string, types, and warning().
Referenced by install_binary_op(), and octave_value_typeinfo::register_binary_op().
bool octave::type_info::register_binary_op | ( | octave_value::compound_binary_op | op, |
int | t1, | ||
int | t2, | ||
type_info::binary_op_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 317 of file ov-typeinfo.cc.
References octave_value::binary_op_fcn_name(), Array< T >::checkelem(), compound_binary_ops, f, lookup_binary_op(), string, types, and warning().
bool octave::type_info::register_cat_op | ( | int | t1, |
int | t2, | ||
type_info::cat_op_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 346 of file ov-typeinfo.cc.
References cat_ops, Array< T >::checkelem(), f, lookup_cat_op(), string, types, and warning().
Referenced by install_cat_op(), and octave_value_typeinfo::register_cat_op().
bool octave::type_info::register_non_const_unary_op | ( | octave_value::unary_op | op, |
int | t, | ||
type_info::non_const_unary_op_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 209 of file ov-typeinfo.cc.
References Array< T >::checkelem(), f, lookup_non_const_unary_op(), non_const_unary_ops, string, t, types, octave_value::unary_op_as_string(), and warning().
Referenced by install_non_const_unary_op(), and octave_value_typeinfo::register_non_const_unary_op().
bool octave::type_info::register_pref_assign_conv | ( | int | t_lhs, |
int | t_rhs, | ||
int | t_result, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 425 of file ov-typeinfo.cc.
References Array< T >::checkelem(), lookup_pref_assign_conv(), pref_assign_conv, string, types, and warning().
Referenced by install_pref_assign_conv(), and octave_value_typeinfo::register_pref_assign_conv().
int octave::type_info::register_type | ( | const std::string & | t_name, |
const std::string & | , | ||
const octave_value & | val, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 85 of file ov-typeinfo.cc.
References assign_ops, assignany_ops, binary_ops, cat_ops, compound_binary_ops, i, non_const_unary_ops, octave_value::num_assign_ops, octave_value::num_binary_ops, octave_value::num_compound_binary_ops, num_types, octave_value::num_unary_ops, Array< T >::numel(), octave_value(), pref_assign_conv, Array< T >::resize(), types, unary_ops, val, vals, warning(), and widening_ops.
Referenced by octave_class::register_type(), octave_value_typeinfo::register_type(), and octave_classdef::register_type().
bool octave::type_info::register_unary_class_op | ( | octave_value::unary_op | op, |
type_info::unary_class_op_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 159 of file ov-typeinfo.cc.
References Array< T >::checkelem(), f, lookup_unary_class_op(), string, unary_class_ops, octave_value::unary_op_as_string(), and warning().
Referenced by install_unary_class_op(), and octave_value_typeinfo::register_unary_class_op().
bool octave::type_info::register_unary_op | ( | octave_value::unary_op | op, |
int | t, | ||
unary_op_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 184 of file ov-typeinfo.cc.
References Array< T >::checkelem(), f, lookup_unary_op(), string, t, types, octave_value::unary_op_as_string(), unary_ops, and warning().
Referenced by install_unary_op(), and octave_value_typeinfo::register_unary_op().
bool octave::type_info::register_widening_op | ( | int | t, |
int | t_result, | ||
octave_base_value::type_conv_fcn | f, | ||
bool | abort_on_duplicate = false |
||
) |
Definition at line 451 of file ov-typeinfo.cc.
References Array< T >::checkelem(), f, lookup_widening_op(), string, t, types, warning(), and widening_ops.
Referenced by install_widening_op(), and octave_value_typeinfo::register_widening_op().
octave_scalar_map octave::type_info::unary_ops_map | ( | void | ) | const |
Definition at line 590 of file ov-typeinfo.cc.
References Array< T >::columns(), i, min(), non_const_unary_ops, num_types, octave_value::num_unary_ops, retval, octave_value::unary_op_as_string(), unary_ops, and Array< T >::xelem().
Referenced by installed_type_info().
|
private |
Definition at line 257 of file ov-typeinfo.h.
Referenced by assign_ops_map(), lookup_assign_op(), register_assign_op(), and register_type().
|
private |
Definition at line 259 of file ov-typeinfo.h.
Referenced by assignany_ops_map(), lookup_assignany_op(), register_assignany_op(), and register_type().
|
private |
Definition at line 247 of file ov-typeinfo.h.
Referenced by lookup_binary_class_op(), and register_binary_class_op().
|
private |
Definition at line 249 of file ov-typeinfo.h.
Referenced by binary_ops_map(), lookup_binary_op(), register_binary_op(), and register_type().
|
private |
Definition at line 255 of file ov-typeinfo.h.
Referenced by installed_type_info(), lookup_cat_op(), register_cat_op(), and register_type().
|
private |
Definition at line 251 of file ov-typeinfo.h.
Referenced by lookup_binary_class_op(), and register_binary_class_op().
|
private |
Definition at line 253 of file ov-typeinfo.h.
Referenced by compound_binary_ops_map(), lookup_binary_op(), register_binary_op(), and register_type().
|
private |
Definition at line 245 of file ov-typeinfo.h.
Referenced by lookup_non_const_unary_op(), non_const_unary_ops_map(), register_non_const_unary_op(), register_type(), and unary_ops_map().
|
private |
Definition at line 235 of file ov-typeinfo.h.
Referenced by assign_ops_map(), assignany_ops_map(), binary_ops_map(), compound_binary_ops_map(), installed_type_names(), lookup_type(), non_const_unary_ops_map(), register_type(), and unary_ops_map().
|
private |
Definition at line 261 of file ov-typeinfo.h.
Referenced by installed_type_info(), lookup_pref_assign_conv(), register_pref_assign_conv(), and register_type().
|
private |
Definition at line 237 of file ov-typeinfo.h.
Referenced by installed_type_names(), lookup_type(), register_assign_op(), register_assignany_op(), register_binary_op(), register_cat_op(), register_non_const_unary_op(), register_pref_assign_conv(), register_type(), register_unary_op(), and register_widening_op().
|
private |
Definition at line 241 of file ov-typeinfo.h.
Referenced by lookup_unary_class_op(), and register_unary_class_op().
|
private |
Definition at line 243 of file ov-typeinfo.h.
Referenced by lookup_unary_op(), register_type(), register_unary_op(), and unary_ops_map().
|
private |
Definition at line 239 of file ov-typeinfo.h.
Referenced by lookup_type(), and register_type().
|
private |
Definition at line 263 of file ov-typeinfo.h.
Referenced by installed_type_info(), lookup_widening_op(), register_type(), and register_widening_op().