diff options
| author | Michael Williamson <mike@zwobble.org> | 2015-10-31 11:50:42 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2015-10-31 11:50:42 +0000 |
| commit | cc7e5865de3e68c1ec2a5a12d40a7925d7b95e2d (patch) | |
| tree | 7b4aa86dc1dfc54e3519fcad26ac6e4f200aeae4 /src/main/java/org/zwobble/couscous/backends/python/PythonCompiler.java | |
| parent | 5e01b55caf49ddbed0f9abdf8ca6592303001985 (diff) | |
Implement divide and mod for Python backend
Diffstat (limited to 'src/main/java/org/zwobble/couscous/backends/python/PythonCompiler.java')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/backends/python/PythonCompiler.java | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/couscous/backends/python/PythonCompiler.java b/src/main/java/org/zwobble/couscous/backends/python/PythonCompiler.java index c5ea3e3..e325302 100644 --- a/src/main/java/org/zwobble/couscous/backends/python/PythonCompiler.java +++ b/src/main/java/org/zwobble/couscous/backends/python/PythonCompiler.java @@ -25,6 +25,9 @@ public class PythonCompiler { compileClass(classNode); } writeClass(TypeName.of("java.lang.Integer"), "class Integer(object):\n def parseInt(value):\n return int(value)"); + writeClass(TypeName.of("_couscous"), + "def _div_round_to_zero(a, b): return -(-a // b) if (a < 0) ^ (b < 0) else a // b\n" + + "def _mod_round_to_zero(a, b): return -(-a % b) if (a < 0) ^ (b < 0) else a % b"); } private Path pathForClass(TypeName className) { |
