@@ -248,6 +248,16 @@ static PyObject *Proxy_multiply(PyObject *o1, PyObject *o2)
248248
249249/* ------------------------------------------------------------------------- */
250250
251+ static PyObject * Proxy_matrix_multiply (PyObject * o1 , PyObject * o2 )
252+ {
253+ Proxy__WRAPPED_REPLACE_OR_RETURN_NULL (o1 );
254+ Proxy__WRAPPED_REPLACE_OR_RETURN_NULL (o2 );
255+
256+ return PyNumber_MatrixMultiply (o1 , o2 );
257+ }
258+
259+ /* ------------------------------------------------------------------------- */
260+
251261static PyObject * Proxy_remainder (PyObject * o1 , PyObject * o2 )
252262{
253263 Proxy__WRAPPED_REPLACE_OR_RETURN_NULL (o1 );
@@ -458,6 +468,28 @@ static PyObject *Proxy_inplace_multiply(
458468
459469/* ------------------------------------------------------------------------- */
460470
471+ static PyObject * Proxy_inplace_matrix_multiply (
472+ ProxyObject * self , PyObject * other )
473+ {
474+ PyObject * object = NULL ;
475+
476+ Proxy__ENSURE_WRAPPED_OR_RETURN_NULL (self );
477+ Proxy__WRAPPED_REPLACE_OR_RETURN_NULL (other );
478+
479+ object = PyNumber_InPlaceMatrixMultiply (self -> wrapped , other );
480+
481+ if (!object )
482+ return NULL ;
483+
484+ Py_DECREF (self -> wrapped );
485+ self -> wrapped = object ;
486+
487+ Py_INCREF (self );
488+ return (PyObject * )self ;
489+ }
490+
491+ /* ------------------------------------------------------------------------- */
492+
461493static PyObject * Proxy_inplace_remainder (
462494 ProxyObject * self , PyObject * other )
463495{
@@ -1239,6 +1271,8 @@ static PyNumberMethods Proxy_as_number = {
12391271 (binaryfunc )Proxy_inplace_floor_divide , /*nb_inplace_floor_divide*/
12401272 (binaryfunc )Proxy_inplace_true_divide , /*nb_inplace_true_divide*/
12411273 (unaryfunc )Proxy_index , /*nb_index*/
1274+ (binaryfunc )Proxy_matrix_multiply , /*nb_matrix_multiply*/
1275+ (binaryfunc )Proxy_inplace_matrix_multiply , /*nb_inplace_matrix_multiply*/
12421276};
12431277
12441278static PySequenceMethods Proxy_as_sequence = {
0 commit comments