Author: Maciej Fijalkowski <[email protected]>
Branch:
Changeset: r366:b725847dbf48
Date: 2013-07-08 10:06 +0200
http://bitbucket.org/pypy/stmgc/changeset/b725847dbf48/
Log: add division
diff --git a/duhton/glob.c b/duhton/glob.c
--- a/duhton/glob.c
+++ b/duhton/glob.c
@@ -196,6 +196,24 @@
return DuInt_FromInt(result);
}
+DuObject *du_div(DuObject *cons, DuObject *locals)
+{
+ int result = 1;
+ while (cons != Du_None) {
+ _du_read1(cons);
+ DuObject *expr = _DuCons_CAR(cons);
+ DuObject *next = _DuCons_NEXT(cons);
+
+ _du_save2(next, locals);
+ DuObject *obj = Du_Eval(expr, locals);
+ result /= DuInt_AsInt(obj);
+ _du_restore2(next, locals);
+
+ cons = next;
+ }
+ return DuInt_FromInt(result);
+}
+
static DuObject *_du_intcmp(DuObject *cons, DuObject *locals, int mode)
{
DuObject *obj_a, *obj_b;
@@ -575,6 +593,7 @@
DuFrame_SetBuiltinMacro(Du_Globals, "+", du_add);
DuFrame_SetBuiltinMacro(Du_Globals, "-", du_sub);
DuFrame_SetBuiltinMacro(Du_Globals, "*", du_mul);
+ DuFrame_SetBuiltinMacro(Du_Globals, "/", du_div);
DuFrame_SetBuiltinMacro(Du_Globals, "<", du_lt);
DuFrame_SetBuiltinMacro(Du_Globals, "<=", du_le);
DuFrame_SetBuiltinMacro(Du_Globals, "==", du_eq);
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit