From: Victor Stinner Date: Wed, 28 Nov 2012 23:12:40 +0000 (+0100) Subject: Cleanup json decoder: float() has builtin support of nan, +inf, -inf since Python 2.6 X-Git-Tag: v3.4.0a1~1934 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d7fed3705909734de38e54a8ac9683a6d96b7e4a;p=python Cleanup json decoder: float() has builtin support of nan, +inf, -inf since Python 2.6 --- diff --git a/Lib/json/decoder.py b/Lib/json/decoder.py index 07fd696400..9b7438cd5b 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):