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

#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) (const 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 &)
 

Public Member Functions

 type_info (int init_tab_sz=16)
 
 ~type_info ()=default
 
octave_scalar_map assign_ops_map () const
 
octave_scalar_map assignany_ops_map () const
 
octave_scalar_map binary_ops_map () const
 
octave_scalar_map compound_binary_ops_map () const
 
bool install_assign_op (octave_value::assign_op op, int t_lhs, int t_rhs, assign_op_fcn f)
 
bool install_assignany_op (octave_value::assign_op op, int t_lhs, assignany_op_fcn f)
 
bool install_binary_class_op (octave_value::binary_op op, binary_class_op_fcn f)
 
bool install_binary_class_op (octave_value::compound_binary_op op, binary_class_op_fcn f)
 
bool install_binary_op (octave_value::binary_op op, int t1, int t2, binary_op_fcn f)
 
bool install_binary_op (octave_value::compound_binary_op op, int t_lhs, int t_rhs, binary_op_fcn f)
 
bool install_cat_op (int t1, int t2, cat_op_fcn f)
 
bool install_non_const_unary_op (octave_value::unary_op op, int t, non_const_unary_op_fcn f)
 
bool install_pref_assign_conv (int t_lhs, int t_rhs, int t_result)
 
bool install_unary_class_op (octave_value::unary_op op, unary_class_op_fcn f)
 
bool install_unary_op (octave_value::unary_op op, int t, unary_op_fcn f)
 
bool install_widening_op (int t, int t_result, octave_base_value::type_conv_fcn f)
 
octave_scalar_map installed_type_info () const
 
string_vector installed_type_names () const
 
assign_op_fcn lookup_assign_op (octave_value::assign_op, int, int)
 
assignany_op_fcn lookup_assignany_op (octave_value::assign_op, int)
 
binary_class_op_fcn lookup_binary_class_op (octave_value::binary_op)
 
binary_class_op_fcn lookup_binary_class_op (octave_value::compound_binary_op)
 
binary_op_fcn lookup_binary_op (octave_value::binary_op, int, int)
 
binary_op_fcn lookup_binary_op (octave_value::compound_binary_op, int, int)
 
cat_op_fcn lookup_cat_op (int, int)
 
non_const_unary_op_fcn lookup_non_const_unary_op (octave_value::unary_op, int)
 
int lookup_pref_assign_conv (int, int)
 
octave_value lookup_type (const std::string &nm)
 
unary_class_op_fcn lookup_unary_class_op (octave_value::unary_op)
 
unary_op_fcn lookup_unary_op (octave_value::unary_op, int)
 
octave_base_value::type_conv_fcn lookup_widening_op (int, int)
 
octave_scalar_map non_const_unary_ops_map () const
 
bool register_assign_op (octave_value::assign_op, int, int, assign_op_fcn, bool abort_on_duplicate=false)
 
bool register_assignany_op (octave_value::assign_op, int, assignany_op_fcn, bool abort_on_duplicate=false)
 
bool register_binary_class_op (octave_value::binary_op, binary_class_op_fcn, bool abort_on_duplicate=false)
 
bool register_binary_class_op (octave_value::compound_binary_op, binary_class_op_fcn, bool abort_on_duplicate=false)
 
bool register_binary_op (octave_value::binary_op, int, int, binary_op_fcn, bool abort_on_duplicate=false)
 
bool register_binary_op (octave_value::compound_binary_op, int, int, binary_op_fcn, bool abort_on_duplicate=false)
 
bool register_cat_op (int, int, cat_op_fcn, bool abort_on_duplicate=false)
 
bool register_non_const_unary_op (octave_value::unary_op, int, non_const_unary_op_fcn, bool abort_on_duplicate=false)
 
bool register_pref_assign_conv (int, int, int, bool abort_on_duplicate=false)
 
int register_type (const std::string &, const std::string &, const octave_value &, bool abort_on_duplicate=false)
 
bool register_unary_class_op (octave_value::unary_op, unary_class_op_fcn, bool abort_on_duplicate=false)
 
bool register_unary_op (octave_value::unary_op, int, unary_op_fcn, bool abort_on_duplicate=false)
 
bool register_widening_op (int, int, octave_base_value::type_conv_fcn, bool abort_on_duplicate=false)
 
octave_scalar_map unary_ops_map () const
 

Detailed Description

Definition at line 42 of file ov-typeinfo.h.

Member Typedef Documentation

◆ assign_op_fcn

typedef octave_value(* type_info::assign_op_fcn) (octave_base_value &, const octave_value_list &, const octave_base_value &)

Definition at line 64 of file ov-typeinfo.h.

◆ assignany_op_fcn

typedef octave_value(* type_info::assignany_op_fcn) (octave_base_value &, const octave_value_list &, const octave_value &)

Definition at line 67 of file ov-typeinfo.h.

◆ binary_class_op_fcn

typedef octave_value(* type_info::binary_class_op_fcn) (const octave_value &, const octave_value &)

Definition at line 54 of file ov-typeinfo.h.

◆ binary_op_fcn

typedef octave_value(* type_info::binary_op_fcn) (const octave_base_value &, const octave_base_value &)

Definition at line 57 of file ov-typeinfo.h.

◆ cat_op_fcn

typedef octave_value(* type_info::cat_op_fcn) (const octave_base_value &, const octave_base_value &, const Array< octave_idx_type > &ra_idx)

Definition at line 60 of file ov-typeinfo.h.

◆ non_const_unary_op_fcn

typedef void(* type_info::non_const_unary_op_fcn) (octave_base_value &)

Definition at line 52 of file ov-typeinfo.h.

◆ unary_class_op_fcn

typedef octave_value(* type_info::unary_class_op_fcn) (const octave_value &)

Definition at line 48 of file ov-typeinfo.h.

◆ unary_op_fcn

typedef octave_value(* type_info::unary_op_fcn) (const octave_base_value &)

Definition at line 50 of file ov-typeinfo.h.

Constructor & Destructor Documentation

◆ type_info()

type_info::type_info ( int  init_tab_sz = 16)
explicit

Definition at line 70 of file ov-typeinfo.cc.

References install_ops(), and install_types().

◆ ~type_info()

type_info::~type_info ( )
default

Member Function Documentation

◆ assign_ops_map()

◆ assignany_ops_map()

◆ binary_ops_map()

◆ compound_binary_ops_map()

◆ install_assign_op()

bool type_info::install_assign_op ( octave_value::assign_op  op,
int  t_lhs,
int  t_rhs,
assign_op_fcn  f 
)
inline

Definition at line 124 of file ov-typeinfo.h.

References f.

◆ install_assignany_op()

bool type_info::install_assignany_op ( octave_value::assign_op  op,
int  t_lhs,
assignany_op_fcn  f 
)
inline

Definition at line 130 of file ov-typeinfo.h.

References f.

◆ install_binary_class_op() [1/2]

bool type_info::install_binary_class_op ( octave_value::binary_op  op,
binary_class_op_fcn  f 
)
inline

Definition at line 95 of file ov-typeinfo.h.

References f.

◆ install_binary_class_op() [2/2]

bool type_info::install_binary_class_op ( octave_value::compound_binary_op  op,
binary_class_op_fcn  f 
)
inline

Definition at line 107 of file ov-typeinfo.h.

References f.

◆ install_binary_op() [1/2]

bool type_info::install_binary_op ( octave_value::binary_op  op,
int  t1,
int  t2,
binary_op_fcn  f 
)
inline

Definition at line 101 of file ov-typeinfo.h.

References f.

◆ install_binary_op() [2/2]

bool type_info::install_binary_op ( octave_value::compound_binary_op  op,
int  t_lhs,
int  t_rhs,
binary_op_fcn  f 
)
inline

Definition at line 113 of file ov-typeinfo.h.

References f.

◆ install_cat_op()

bool type_info::install_cat_op ( int  t1,
int  t2,
cat_op_fcn  f 
)
inline

Definition at line 119 of file ov-typeinfo.h.

References f.

◆ install_non_const_unary_op()

bool type_info::install_non_const_unary_op ( octave_value::unary_op  op,
int  t,
non_const_unary_op_fcn  f 
)
inline

Definition at line 89 of file ov-typeinfo.h.

References f.

◆ install_pref_assign_conv()

bool type_info::install_pref_assign_conv ( int  t_lhs,
int  t_rhs,
int  t_result 
)
inline

Definition at line 136 of file ov-typeinfo.h.

◆ install_unary_class_op()

bool type_info::install_unary_class_op ( octave_value::unary_op  op,
unary_class_op_fcn  f 
)
inline

Definition at line 78 of file ov-typeinfo.h.

References f.

◆ install_unary_op()

bool type_info::install_unary_op ( octave_value::unary_op  op,
int  t,
unary_op_fcn  f 
)
inline

Definition at line 84 of file ov-typeinfo.h.

References f.

◆ install_widening_op()

bool type_info::install_widening_op ( int  t,
int  t_result,
octave_base_value::type_conv_fcn  f 
)
inline

Definition at line 141 of file ov-typeinfo.h.

References f.

◆ installed_type_info()

◆ installed_type_names()

string_vector type_info::installed_type_names ( ) const

Definition at line 597 of file ov-typeinfo.cc.

Referenced by Ftypeinfo(), installed_type_info(), and installed_type_names().

◆ lookup_assign_op()

type_info::assign_op_fcn type_info::lookup_assign_op ( octave_value::assign_op  op,
int  t_lhs,
int  t_rhs 
)

Definition at line 569 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

Referenced by lookup_assign_op(), and register_assign_op().

◆ lookup_assignany_op()

type_info::assignany_op_fcn type_info::lookup_assignany_op ( octave_value::assign_op  op,
int  t_lhs 
)

Definition at line 577 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

Referenced by lookup_assignany_op(), and register_assignany_op().

◆ lookup_binary_class_op() [1/2]

type_info::binary_class_op_fcn type_info::lookup_binary_class_op ( octave_value::binary_op  op)

Definition at line 533 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

Referenced by lookup_binary_class_op().

◆ lookup_binary_class_op() [2/2]

type_info::binary_class_op_fcn type_info::lookup_binary_class_op ( octave_value::compound_binary_op  op)

Definition at line 547 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

◆ lookup_binary_op() [1/2]

type_info::binary_op_fcn type_info::lookup_binary_op ( octave_value::binary_op  op,
int  t1,
int  t2 
)

Definition at line 540 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

Referenced by lookup_binary_op().

◆ lookup_binary_op() [2/2]

type_info::binary_op_fcn type_info::lookup_binary_op ( octave_value::compound_binary_op  op,
int  t1,
int  t2 
)

Definition at line 554 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

◆ lookup_cat_op()

type_info::cat_op_fcn type_info::lookup_cat_op ( int  t1,
int  t2 
)

Definition at line 562 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

Referenced by lookup_cat_op(), and register_cat_op().

◆ lookup_non_const_unary_op()

type_info::non_const_unary_op_fcn type_info::lookup_non_const_unary_op ( octave_value::unary_op  op,
int  t 
)

Definition at line 526 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

Referenced by lookup_non_const_unary_op(), and register_non_const_unary_op().

◆ lookup_pref_assign_conv()

int type_info::lookup_pref_assign_conv ( int  t_lhs,
int  t_rhs 
)

Definition at line 584 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem().

Referenced by lookup_pref_assign_conv(), and register_pref_assign_conv().

◆ lookup_type()

octave_value type_info::lookup_type ( const std::string &  nm)

Definition at line 494 of file ov-typeinfo.cc.

References octave_value::make_unique().

Referenced by lookup_type(), and read_binary_data().

◆ lookup_unary_class_op()

type_info::unary_class_op_fcn type_info::lookup_unary_class_op ( octave_value::unary_op  op)

Definition at line 512 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

Referenced by lookup_unary_class_op(), and register_unary_class_op().

◆ lookup_unary_op()

type_info::unary_op_fcn type_info::lookup_unary_op ( octave_value::unary_op  op,
int  t 
)

Definition at line 519 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

Referenced by lookup_unary_op(), and register_unary_op().

◆ lookup_widening_op()

octave_base_value::type_conv_fcn type_info::lookup_widening_op ( int  t,
int  t_result 
)

Definition at line 590 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), and f.

Referenced by lookup_widening_op(), and register_widening_op().

◆ non_const_unary_ops_map()

◆ register_assign_op()

bool type_info::register_assign_op ( octave_value::assign_op  ,
int  ,
int  ,
assign_op_fcn  ,
bool  abort_on_duplicate = false 
)

◆ register_assignany_op()

bool type_info::register_assignany_op ( octave_value::assign_op  ,
int  ,
assignany_op_fcn  ,
bool  abort_on_duplicate = false 
)

◆ register_binary_class_op() [1/2]

bool type_info::register_binary_class_op ( octave_value::binary_op  ,
binary_class_op_fcn  ,
bool  abort_on_duplicate = false 
)

◆ register_binary_class_op() [2/2]

bool type_info::register_binary_class_op ( octave_value::compound_binary_op  ,
binary_class_op_fcn  ,
bool  abort_on_duplicate = false 
)

◆ register_binary_op() [1/2]

bool type_info::register_binary_op ( octave_value::binary_op  ,
int  ,
int  ,
binary_op_fcn  ,
bool  abort_on_duplicate = false 
)

◆ register_binary_op() [2/2]

bool type_info::register_binary_op ( octave_value::compound_binary_op  ,
int  ,
int  ,
binary_op_fcn  ,
bool  abort_on_duplicate = false 
)

◆ register_cat_op()

bool type_info::register_cat_op ( int  ,
int  ,
cat_op_fcn  ,
bool  abort_on_duplicate = false 
)

Definition at line 359 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), f, lookup_cat_op(), and warning().

◆ register_non_const_unary_op()

bool type_info::register_non_const_unary_op ( octave_value::unary_op  ,
int  ,
non_const_unary_op_fcn  ,
bool  abort_on_duplicate = false 
)

◆ register_pref_assign_conv()

bool type_info::register_pref_assign_conv ( int  t_lhs,
int  t_rhs,
int  t_result,
bool  abort_on_duplicate = false 
)

◆ register_type()

int type_info::register_type ( const std::string &  t_name,
const std::string &  ,
const octave_value val,
bool  abort_on_duplicate = false 
)

◆ register_unary_class_op()

bool type_info::register_unary_class_op ( octave_value::unary_op  ,
unary_class_op_fcn  ,
bool  abort_on_duplicate = false 
)

◆ register_unary_op()

bool type_info::register_unary_op ( octave_value::unary_op  op,
int  t,
unary_op_fcn  f,
bool  abort_on_duplicate = false 
)

◆ register_widening_op()

bool 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 468 of file ov-typeinfo.cc.

References Array< T, Alloc >::checkelem(), f, lookup_widening_op(), and warning().

◆ unary_ops_map()


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