Mercurial > hg > octave-nkf
diff src/ov-typeinfo.h @ 7800:5861b95e9879
support for compound operators, implement trans_mul, mul_trans, herm_mul and mul_herm
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Wed, 07 May 2008 16:33:15 +0200 |
parents | 745a8299c2b5 |
children | eb63fbe60fab |
line wrap: on
line diff
--- a/src/ov-typeinfo.h +++ b/src/ov-typeinfo.h @@ -80,6 +80,12 @@ static bool register_binary_op (octave_value::binary_op, int, int, binary_op_fcn); + static bool register_binary_class_op (octave_value::compound_binary_op, + binary_class_op_fcn); + + static bool register_binary_op (octave_value::compound_binary_op, int, int, + binary_op_fcn); + static bool register_cat_op (int, int, cat_op_fcn); static bool register_assign_op (octave_value::assign_op, int, int, @@ -132,6 +138,18 @@ return instance->do_lookup_binary_op (op, t1, t2); } + static binary_class_op_fcn + lookup_binary_class_op (octave_value::compound_binary_op op) + { + return instance->do_lookup_binary_class_op (op); + } + + static binary_op_fcn + lookup_binary_op (octave_value::compound_binary_op op, int t1, int t2) + { + return instance->do_lookup_binary_op (op, t1, t2); + } + static cat_op_fcn lookup_cat_op (int t1, int t2) { @@ -212,6 +230,10 @@ Array3<binary_op_fcn> binary_ops; + Array<binary_class_op_fcn> compound_binary_class_ops; + + Array3<binary_op_fcn> compound_binary_ops; + Array2<cat_op_fcn> cat_ops; Array3<assign_op_fcn> assign_ops; @@ -240,6 +262,12 @@ bool do_register_binary_op (octave_value::binary_op, int, int, binary_op_fcn); + bool do_register_binary_class_op (octave_value::compound_binary_op, + binary_class_op_fcn); + + bool do_register_binary_op (octave_value::compound_binary_op, int, int, + binary_op_fcn); + bool do_register_cat_op (int, int, cat_op_fcn); bool do_register_assign_op (octave_value::assign_op, int, int, @@ -267,6 +295,10 @@ binary_op_fcn do_lookup_binary_op (octave_value::binary_op, int, int); + binary_class_op_fcn do_lookup_binary_class_op (octave_value::compound_binary_op); + + binary_op_fcn do_lookup_binary_op (octave_value::compound_binary_op, int, int); + cat_op_fcn do_lookup_cat_op (int, int); assign_op_fcn do_lookup_assign_op (octave_value::assign_op, int, int);