Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.8/site-packages/pip/_vendor/msgpack/__init__.py: 75%
24 statements
« prev ^ index » next coverage.py v7.2.7, created at 2023-06-07 06:48 +0000
« prev ^ index » next coverage.py v7.2.7, created at 2023-06-07 06:48 +0000
1# coding: utf-8
2from .exceptions import *
3from .ext import ExtType, Timestamp
5import os
6import sys
9version = (1, 0, 5)
10__version__ = "1.0.5"
13if os.environ.get("MSGPACK_PUREPYTHON") or sys.version_info[0] == 2:
14 from .fallback import Packer, unpackb, Unpacker
15else:
16 try:
17 from ._cmsgpack import Packer, unpackb, Unpacker
18 except ImportError:
19 from .fallback import Packer, unpackb, Unpacker
22def pack(o, stream, **kwargs):
23 """
24 Pack object `o` and write it to `stream`
26 See :class:`Packer` for options.
27 """
28 packer = Packer(**kwargs)
29 stream.write(packer.pack(o))
32def packb(o, **kwargs):
33 """
34 Pack object `o` and return packed bytes
36 See :class:`Packer` for options.
37 """
38 return Packer(**kwargs).pack(o)
41def unpack(stream, **kwargs):
42 """
43 Unpack an object from `stream`.
45 Raises `ExtraData` when `stream` contains extra bytes.
46 See :class:`Unpacker` for options.
47 """
48 data = stream.read()
49 return unpackb(data, **kwargs)
52# alias for compatibility to simplejson/marshal/pickle.
53load = unpack
54loads = unpackb
56dump = pack
57dumps = packb