From 7c6ef3caba7b4699d4df716e4cefbd34d98dcfa1 Mon Sep 17 00:00:00 2001 From: blueloveTH Date: Mon, 27 Mar 2023 13:21:05 +0800 Subject: [PATCH] add `divmod` --- src/pocketpy.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/pocketpy.h b/src/pocketpy.h index d5938f52..aa4bbd5d 100644 --- a/src/pocketpy.h +++ b/src/pocketpy.h @@ -84,6 +84,13 @@ void init_builtins(VM* _vm) { return VAR(obj.bits); }); + _vm->bind_builtin_func<2>("divmod", [](VM* vm, Args& args) { + i64 lhs = CAST(i64, args[0]); + i64 rhs = CAST(i64, args[1]); + if(rhs == 0) vm->ZeroDivisionError(); + return VAR(two_args(VAR(lhs/rhs), VAR(lhs%rhs))); + }); + _vm->bind_builtin_func<1>("vars", [](VM* vm, Args& args) { const PyVar& obj = args[0]; List ret;