Skip to main content

Implementation of the Permuatio wire format

Project description

Binfmt is a binary exchange format

Permuatio uses a binary format called binformat. This is a python implementation of said format.

Usage

The module exports main 2 methods write_msg and read_msg, as well as their safe (non-exception throwing) counterparts safe_write_msg and safe_read_msg.

Documentation:

write_msg

Takes 2 argumentss

  • file: a BufferedWriter that can have binary values write to
  • obj: one of the types that binformat can represent, that will be writen

safe_write_msg

Takes 2 argument:

  • filename: a filename that the file should be written to, should there not be issues with writing the value
  • obj: as in above

It also returns 1 value: Either None or str which is an error string

read_msg

Takes 1 argument:

  • file: a BufferedReader that can have binary values read from

It also returns 1 value: an object that has been read from the file.

safe_read_msg

Takes 1 argument:

  • filename: a filename that the file should be read from

It also returns 1 value: an object that has been read from the file or an error.

Example

import binformat

safe_write_msg("hexxy", {
    1: b"Hello world",
    2: [1, 2, 3]
})

with open("hexxy", "rb") as f:
    print(read_msg(f))
    # { 1: b"Hello world", 2: [1, 2, 3] }

Testing

Run tests.py

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

binformat-1.0.2.tar.gz (14.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

binformat-1.0.2-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

Details for the file binformat-1.0.2.tar.gz.

File metadata

  • Download URL: binformat-1.0.2.tar.gz
  • Upload date:
  • Size: 14.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.9 Darwin/22.2.0

File hashes

Hashes for binformat-1.0.2.tar.gz
Algorithm Hash digest
SHA256 3d40960be0e8471a2d33808769a6dcae0103d33f3e648f2dbd0b1e3d692fba77
MD5 a7b5100621e07e6adcf5017abc7d1c0d
BLAKE2b-256 b6089ada7f81e1f41b2bffd632a8fb695efab72c15f9b5bee5351290cf8fb677

See more details on using hashes here.

File details

Details for the file binformat-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: binformat-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 14.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.9 Darwin/22.2.0

File hashes

Hashes for binformat-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 26d04e144a77fa33f9b177bec56457dbce6567fabc3e45d204c6fa1e525f2919
MD5 f37b1a48532c7521bff8162cf9967877
BLAKE2b-256 c52765fdb63f7df0a6ff35b2615b718c0b0743c4807be358a5d300fdaaf10649

See more details on using hashes here.

Supported by

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