Skip to main content

Simple decoder and encoder for CBOR

Project description

Flynn (his real name is Walter White Jr.), is a protagonist in Breaking Bad and the son of Walter White (a. k. a. Heisenberg).

Flynn is also a Python library providing CBOR [RFC7049] encoding and decoding with a traditional buffered and a streaming interface.

Usage

The Flynn API is really simple and inspired by existing Python serialisation modules like json and pickle. The flynn module has four methods called dumps, dump, loads and load, where dumps will return the serialised input as bytes string, while dump will write the serialised input to a file descriptor. The same applies to loads and load.

>>> flynn.dumps([1, [2, 3]])
b'\x82\x01\x82\x02\x03'
>>> flynn.loads(b'\x82\x01\x82\x02\x03')
[1, [2, 3]]

Furthermore, Flynn supports generators and other iterables as input for streaming support:

>>> flynn.dumps(range(5))
b'\x9f\x00\x01\x02\x03\x04\xff'
>>> flynn.loads(b'\x9f\x00\x01\x02\x03\x04\xff')
[0, 1, 2, 3, 4]

Or to generate a map using an iterable:

>>> flynn.dumps((((a, a) for a in range(5)), "map"))
b'\xbf\x00\x00\x01\x01\x02\x02\x03\x03\x04\x04\xff'
>>> flynn.loads(b'\xbf\x00\x00\x01\x01\x02\x02\x03\x03\x04\x04\xff')
{0: 0, 1: 1, 2: 2, 3: 3, 4: 4}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flynn-1.0.0b2.tar.gz (5.0 kB view details)

Uploaded Source

File details

Details for the file flynn-1.0.0b2.tar.gz.

File metadata

  • Download URL: flynn-1.0.0b2.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for flynn-1.0.0b2.tar.gz
Algorithm Hash digest
SHA256 bb0004e3f6924b3148e3b537988356875c669fb502696fb2f5e366d7297b02d2
MD5 89dfc8654fcb8ac713e5e5cf407e122d
BLAKE2b-256 def1f114cb847e78a33f755a6a82c1ccc29ea0986244344ee549acbb260f041e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page