@@ -571,24 +571,48 @@ impl VirtualMachine {
571571 } )
572572 }
573573
574- pub fn _div ( & mut self , a : PyObjectRef , b : PyObjectRef ) -> PyResult {
574+ pub fn _matmul ( & mut self , a : PyObjectRef , b : PyObjectRef ) -> PyResult {
575+ self . call_or_unsupported ( a, b, "__matmul__" , "__rmatmul__" , |vm, a, b| {
576+ Err ( vm. new_unsupported_operand_error ( a, b, "@" ) )
577+ } )
578+ }
579+
580+ pub fn _truediv ( & mut self , a : PyObjectRef , b : PyObjectRef ) -> PyResult {
575581 self . call_or_unsupported ( a, b, "__truediv__" , "__rtruediv__" , |vm, a, b| {
576582 Err ( vm. new_unsupported_operand_error ( a, b, "/" ) )
577583 } )
578584 }
579585
586+ pub fn _floordiv ( & mut self , a : PyObjectRef , b : PyObjectRef ) -> PyResult {
587+ self . call_or_unsupported ( a, b, "__floordiv__" , "__rfloordiv__" , |vm, a, b| {
588+ Err ( vm. new_unsupported_operand_error ( a, b, "//" ) )
589+ } )
590+ }
591+
580592 pub fn _pow ( & mut self , a : PyObjectRef , b : PyObjectRef ) -> PyResult {
581593 self . call_or_unsupported ( a, b, "__pow__" , "__rpow__" , |vm, a, b| {
582594 Err ( vm. new_unsupported_operand_error ( a, b, "**" ) )
583595 } )
584596 }
585597
586- pub fn _modulo ( & mut self , a : PyObjectRef , b : PyObjectRef ) -> PyResult {
598+ pub fn _mod ( & mut self , a : PyObjectRef , b : PyObjectRef ) -> PyResult {
587599 self . call_or_unsupported ( a, b, "__mod__" , "__rmod__" , |vm, a, b| {
588600 Err ( vm. new_unsupported_operand_error ( a, b, "%" ) )
589601 } )
590602 }
591603
604+ pub fn _lshift ( & mut self , a : PyObjectRef , b : PyObjectRef ) -> PyResult {
605+ self . call_or_unsupported ( a, b, "__lshift__" , "__rlshift__" , |vm, a, b| {
606+ Err ( vm. new_unsupported_operand_error ( a, b, "<<" ) )
607+ } )
608+ }
609+
610+ pub fn _rshift ( & mut self , a : PyObjectRef , b : PyObjectRef ) -> PyResult {
611+ self . call_or_unsupported ( a, b, "__rshift__" , "__rrshift__" , |vm, a, b| {
612+ Err ( vm. new_unsupported_operand_error ( a, b, ">>" ) )
613+ } )
614+ }
615+
592616 pub fn _xor ( & mut self , a : PyObjectRef , b : PyObjectRef ) -> PyResult {
593617 self . call_or_unsupported ( a, b, "__xor__" , "__rxor__" , |vm, a, b| {
594618 Err ( vm. new_unsupported_operand_error ( a, b, "^" ) )
0 commit comments