@@ -205,7 +205,12 @@ class Unpacker(object):
205
205
for o in unpacker:
206
206
process(o)
207
207
"""
208
-
208
+ # Some old pythons don't support `self._unpack_from()` `bytearray`.
209
+ _unpack_from = staticmethod (
210
+ struct .unpack_from if sys .version_info >= (2 , 7 , 6 )
211
+ else lambda f ,b ,o = 0 : struct .unpack_from (f , b [:o + 2 ].tobytes (),o )
212
+ )
213
+
209
214
def __init__ (self , file_like = None , read_size = 0 , use_list = True , raw = True ,
210
215
object_hook = None , object_pairs_hook = None , list_hook = None ,
211
216
encoding = None , unicode_errors = None , max_buffer_size = 0 ,
@@ -231,14 +236,6 @@ def __init__(self, file_like=None, read_size=0, use_list=True, raw=True,
231
236
raise TypeError ("`file_like.read` must be callable" )
232
237
self .file_like = file_like
233
238
self ._feeding = False
234
- # Some old pythons don't support `self._unpack_from()` `bytearray`.
235
- if sys .version_info < (2 , 7 , 6 ):
236
- self ._unpack_from = staticmethod (
237
- lambda f ,b ,o = 0 : struct .unpack_from (f , b [:o + 2 ].tobytes (), o )
238
- )
239
- else :
240
- self ._unpack_from = staticmethod (struct .unpack_from )
241
-
242
239
243
240
#: array of bytes fed.
244
241
self ._buffer = bytearray ()
0 commit comments