# HG changeset patch # User Paul Boddie # Date 1549302836 -3600 # Node ID 3a73899174a4e97362cd44b341ed96b9da88dc95 # Parent 6169eae54bd4b49f3fe16971cb8cdd602a199bfd Optimised pow to avoid an unnecessary type check after conversion to float. diff -r 6169eae54bd4 -r 3a73899174a4 lib/operator/binary.py --- a/lib/operator/binary.py Mon Feb 04 18:30:52 2019 +0100 +++ b/lib/operator/binary.py Mon Feb 04 18:53:56 2019 +0100 @@ -92,7 +92,7 @@ return int_pow(a, b) elif a.__class__ is float: if is_int(b): - b = int_float(b) + return float_pow(a, int_float(b)) if b.__class__ is float: return float_pow(a, b) return binary_op(a, b, lambda a: a.__pow__, lambda b: b.__rpow__)