From d7fed3705909734de38e54a8ac9683a6d96b7e4a Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Thu, 29 Nov 2012 00:12:40 +0100 Subject: Cleanup json decoder: float() has builtin support of nan, +inf, -inf since Python 2.6 --- Lib/json/decoder.py | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/Lib/json/decoder.py b/Lib/json/decoder.py index 07fd696..9b7438c 100644 --- a/Lib/json/decoder.py +++ b/Lib/json/decoder.py @@ -1,9 +1,6 @@ """Implementation of JSONDecoder """ -import binascii import re -import sys -import struct from json import scanner try: @@ -15,14 +12,9 @@ __all__ = ['JSONDecoder'] FLAGS = re.VERBOSE | re.MULTILINE | re.DOTALL -def _floatconstants(): - _BYTES = binascii.unhexlify(b'7FF80000000000007FF0000000000000') - if sys.byteorder != 'big': - _BYTES = _BYTES[:8][::-1] + _BYTES[8:][::-1] - nan, inf = struct.unpack('dd', _BYTES) - return nan, inf, -inf - -NaN, PosInf, NegInf = _floatconstants() +NaN = float('nan') +PosInf = float('inf') +NegInf = float('-inf') def linecol(doc, pos): -- cgit v0.12