23 #if defined (HAVE_CONFIG_H)
54 error (
"unable to create value type info object!");
138 int t_lhs,
int t_rhs,
181 if (t_name ==
types (i))
235 warning (
"duplicate unary operator '%s' for class dispatch",
240 =
reinterpret_cast<void *
> (
f);
255 warning (
"duplicate unary operator '%s' for type '%s'",
256 op_name.c_str (), type_name.c_str ());
269 if (lookup_non_const_unary_op (op, t))
274 warning (
"duplicate unary operator '%s' for type '%s'",
275 op_name.c_str (), type_name.c_str ());
278 non_const_unary_ops.checkelem (static_cast<int> (op), t)
279 =
reinterpret_cast<void *
> (
f);
292 warning (
"duplicate binary operator '%s' for class dispatch",
297 =
reinterpret_cast<void *
> (
f);
313 warning (
"duplicate binary operator '%s' for types '%s' and '%s'",
314 op_name.c_str (), t1_name.c_str (), t1_name.c_str ());
318 =
reinterpret_cast<void *
> (
f);
331 warning (
"duplicate compound binary operator '%s' for class dispatch",
336 =
reinterpret_cast<void *
> (
f);
352 warning (
"duplicate compound binary operator '%s' for types '%s' and '%s'",
353 op_name.c_str (), t1_name.c_str (), t1_name.c_str ());
357 =
reinterpret_cast<void *
> (
f);
371 warning (
"duplicate concatenation operator for types '%s' and '%s'",
372 t1_name.c_str (), t1_name.c_str ());
382 int t_lhs,
int t_rhs,
391 warning (
"duplicate assignment operator '%s' for types '%s' and '%s'",
392 op_name.c_str (), t_lhs_name.c_str (), t_rhs_name.c_str ());
396 =
reinterpret_cast<void *
> (
f);
410 warning (
"duplicate assignment operator '%s' for types '%s'",
411 op_name.c_str (), t_lhs_name.c_str ());
415 =
reinterpret_cast<void *
> (
f);
429 warning (
"overriding assignment conversion for types '%s' and '%s'",
430 t_lhs_name.c_str (), t_rhs_name.c_str ());
442 if (lookup_widening_op (t, t_result))
447 warning (
"overriding widening op for '%s' to '%s'",
448 t_name.c_str (), t_result_name.c_str ());
451 widening_ops.checkelem (t, t_result) =
reinterpret_cast<void *
> (
f);
492 void *f = non_const_unary_ops.checkelem (static_cast<int> (op), t);
535 int t_lhs,
int t_rhs)
593 return ovl (
args(0).type_name ());
720 for (
int i = 0;
i < len;
i++)
745 for (
int i = 0;
i < len;
i++)
769 for (
int j = 0; j < len; j++)
770 for (
int i = 0;
i < len;
i++)
795 for (
int j = 0; j < len; j++)
796 for (
int i = 0;
i < len;
i++)
821 for (
int j = 0; j < len; j++)
822 for (
int i = 0;
i < len;
i++)
846 for (
int i = 0;
i < len;
i++)
862 for (
int i = 0;
i < x.
numel ();
i++)
863 retval.xelem(
i) =
x(
i);
893 if (
args.length () > 0)
static bool register_pref_assign_conv(int, int, int)
static bool register_assign_op(octave_value::assign_op, int, int, assign_op_fcn)
static const int init_tab_sz
Array< void * > binary_ops
void(* non_const_unary_op_fcn)(octave_base_value &)
bool do_register_non_const_unary_op(octave_value::unary_op, int, non_const_unary_op_fcn)
octave_scalar_map unary_ops_map(void) const
octave_value(* binary_op_fcn)(const octave_base_value &, const octave_base_value &)
octave_scalar_map non_const_unary_ops_map(void) const
OCTAVE_EXPORT octave_value_list isa nd deftypefn *return ovl(args(0).is_integer_type())
OCTINTERP_API void print_usage(void)
static std::string binary_op_as_string(binary_op)
static octave_scalar_map installed_type_info(void)
static void cleanup_instance(void)
octave_idx_type numel(void) const
Number of elements in the array.
identity matrix If supplied two scalar respectively For allows like xample val
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE const F77_DBLE * f
static string_vector installed_type_names(void)
cat_op_fcn do_lookup_cat_op(int, int)
Array< int > pref_assign_conv
octave_scalar_map assignany_ops_map(void) const
Array< octave_value > vals
Array< void * > binary_class_ops
unary_op_fcn do_lookup_unary_op(octave_value::unary_op, int)
#define DEFUN(name, args_name, nargout_name, doc)
void error(const char *fmt,...)
unary_class_op_fcn do_lookup_unary_class_op(octave_value::unary_op)
static bool register_unary_class_op(octave_value::unary_op, unary_class_op_fcn)
void setfield(const std::string &key, const octave_value &val)
octave_value(* binary_class_op_fcn)(const octave_value &, const octave_value &)
static std::string assign_op_as_string(assign_op)
octave_scalar_map binary_ops_map(void) const
static binary_op_fcn lookup_binary_op(octave_value::binary_op op, int t1, int t2)
static int lookup_pref_assign_conv(int t_lhs, int t_rhs)
octave_base_value::type_conv_fcn do_lookup_widening_op(int, int)
OCTAVE_EXPORT octave_value_list return the number of command line arguments passed to Octave If called with the optional argument the function t
octave_scalar_map assign_ops_map(void) const
bool do_register_binary_op(octave_value::binary_op, int, int, binary_op_fcn)
bool do_register_unary_op(octave_value::unary_op, int, unary_op_fcn)
static octave_value_typeinfo * instance
assignany_op_fcn do_lookup_assignany_op(octave_value::assign_op, int)
static unary_class_op_fcn lookup_unary_class_op(octave_value::unary_op op)
binary_class_op_fcn do_lookup_binary_class_op(octave_value::binary_op)
const dim_vector & dims(void) const
Return a const-reference so that dims ()(i) works efficiently.
octave_scalar_map do_installed_type_info(void) const
octave_value(* cat_op_fcn)(octave_base_value &, const octave_base_value &, const Array< octave_idx_type > &ra_idx)
non_const_unary_op_fcn do_lookup_non_const_unary_op(octave_value::unary_op, int)
OCTAVE_EXPORT octave_value_list isdir nd deftypefn *std::string nm
octave_value(* unary_op_fcn)(const octave_base_value &)
static assignany_op_fcn lookup_assignany_op(octave_value::assign_op op, int t_lhs)
int do_lookup_pref_assign_conv(int, int)
Array< void * > non_const_unary_ops
static std::string binary_op_fcn_name(binary_op)
assign_op_fcn do_lookup_assign_op(octave_value::assign_op, int, int)
Array< void * > assignany_ops
void resize(const dim_vector &dv, const T &rfv)
Array< void * > unary_class_ops
static bool register_non_const_unary_op(octave_value::unary_op, int, non_const_unary_op_fcn)
bool do_register_assignany_op(octave_value::assign_op, int, assignany_op_fcn)
static bool register_binary_op(octave_value::binary_op, int, int, binary_op_fcn)
static binary_class_op_fcn lookup_binary_class_op(octave_value::binary_op op)
bool do_register_assign_op(octave_value::assign_op, int, int, assign_op_fcn)
octave_scalar_map compound_binary_ops_map(void) const
bool do_register_unary_class_op(octave_value::unary_op, unary_class_op_fcn)
bool do_register_pref_assign_conv(int, int, int)
void warning(const char *fmt,...)
octave_value(* assignany_op_fcn)(octave_base_value &, const octave_value_list &, const octave_value &)
bool do_register_widening_op(int, int, octave_base_value::type_conv_fcn)
octave_value(* assign_op_fcn)(octave_base_value &, const octave_value_list &, const octave_base_value &)
static bool register_widening_op(int, int, octave_base_value::type_conv_fcn)
bool do_register_binary_class_op(octave_value::binary_op, binary_class_op_fcn)
static cat_op_fcn lookup_cat_op(int t1, int t2)
octave_base_value *(* type_conv_fcn)(const octave_base_value &)
static bool register_cat_op(int, int, cat_op_fcn)
T & checkelem(octave_idx_type n)
=val(i)}if ode{val(i)}occurs in table i
Array< void * > unary_ops
static int register_type(const std::string &, const std::string &, const octave_value &)
Array< void * > assign_ops
string_vector do_installed_type_names(void) const
octave_value(* unary_class_op_fcn)(const octave_value &)
int do_register_type(const std::string &, const std::string &, const octave_value &)
Array< void * > widening_ops
octave_value_typeinfo(void)
octave_value do_lookup_type(const std::string &nm)
static assign_op_fcn lookup_assign_op(octave_value::assign_op op, int t_lhs, int t_rhs)
static std::string unary_op_as_string(unary_op)
static bool instance_ok(void)
Array< void * > compound_binary_ops
Vector representing the dimensions (size) of an Array.
If this string is the system will ring the terminal sometimes it is useful to be able to print the original representation of the string
octave_idx_type columns(void) const
static bool register_binary_class_op(octave_value::binary_op, binary_class_op_fcn)
binary_op_fcn do_lookup_binary_op(octave_value::binary_op, int, int)
Array< std::string > types
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE * x
bool do_register_cat_op(int, int, cat_op_fcn)
charNDArray min(char d, const charNDArray &m)
static bool register_unary_op(octave_value::unary_op, int, unary_op_fcn)
static unary_op_fcn lookup_unary_op(octave_value::unary_op op, int t)
static bool register_assignany_op(octave_value::assign_op, int, assignany_op_fcn)
Array< void * > compound_binary_class_ops