Author: Alex Gaynor <alex.gay...@gmail.com> Branch: Changeset: r66442:b0810369a3a8 Date: 2013-08-29 18:36 -0700 http://bitbucket.org/pypy/pypy/changeset/b0810369a3a8/
Log: Simplify this code and make it faster diff --git a/lib-python/2.7/uuid.py b/lib-python/2.7/uuid.py --- a/lib-python/2.7/uuid.py +++ b/lib-python/2.7/uuid.py @@ -44,6 +44,8 @@ UUID('00010203-0405-0607-0809-0a0b0c0d0e0f') """ +import struct + __author__ = 'Ka-Ping Yee <p...@zesty.ca>' RESERVED_NCS, RFC_4122, RESERVED_MICROSOFT, RESERVED_FUTURE = [ @@ -142,7 +144,8 @@ if bytes is not None: if len(bytes) != 16: raise ValueError('bytes is not a 16-char string') - int = long(('%02x'*16) % tuple(map(ord, bytes)), 16) + int = (struct.unpack('>Q', bytes[:8])[0] << 64 | + struct.unpack('>Q', bytes[8:])[0]) if fields is not None: if len(fields) != 6: raise ValueError('fields is not a 6-tuple') _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit