ktongue's picture
download
raw
1.32 kB
#!/usr/bin/env python
#
# Author: Mike McKerns (mmckerns @caltech and @uqfoundation)
# Copyright (c) 2008-2016 California Institute of Technology.
# Copyright (c) 2016-2025 The Uncertainty Quantification Foundation.
# License: 3-clause BSD. The full license text is available at:
# - https://github.com/uqfoundation/dill/blob/master/LICENSE
import dill as pickle
from io import BytesIO as StringIO
def my_fn(x):
return x * 17
def test_extend():
obj = lambda : my_fn(34)
assert obj() == 578
obj_io = StringIO()
pickler = pickle.Pickler(obj_io)
pickler.dump(obj)
obj_str = obj_io.getvalue()
obj2_io = StringIO(obj_str)
unpickler = pickle.Unpickler(obj2_io)
obj2 = unpickler.load()
assert obj2() == 578
def test_isdill():
obj_io = StringIO()
pickler = pickle.Pickler(obj_io)
assert pickle._dill.is_dill(pickler) is True
pickler = pickle._dill.StockPickler(obj_io)
assert pickle._dill.is_dill(pickler) is False
try:
import multiprocess as mp
pickler = mp.reduction.ForkingPickler(obj_io)
assert pickle._dill.is_dill(pickler, child=True) is True
assert pickle._dill.is_dill(pickler, child=False) is False
except Exception:
pass
if __name__ == '__main__':
test_extend()
test_isdill()

Xet Storage Details

Size:
1.32 kB
·
Xet hash:
978b97fe5697b6935f343bce66935d2c3144ab90546d32c21c53217afee82c8c

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.