Skip to main content

Requires Python 3 because a Python 2 bytes object is too weak, as also is my cs.py.bytes hack class.

* Cameron Simpson <cs@cskk.id.au> 22jul2018

Class BytesesField

MRO: PacketField
A field containing a list of bytes chunks.

The following attributes are defined:

  • value: the gathered data as a list of bytes instances, or None if the field was gathered with discard_data true.
  • offset: the starting offset of the data.
  • end_offset: the ending offset of the data.

Class BytesField

MRO: PacketField
A field of bytes.

Class BytesRunField

MRO: PacketField
A field containing a continuous run of a single bytes value.

The following attributes are defined:

  • length: the length of the run
  • bytes_value: the repeated bytes value

The property value is computed on the fly on every reference and returns a value obeying the buffer protocol: a bytes or memoryview object.

Function fixed_bytes_field(length, class_name=None)

Factory for PacketField subclasses built off fixed length byte strings.

Function flatten(chunks)

Flatten chunks into an iterable of bytes instances.

This exists to allow subclass methods to easily return ASCII strings or bytes or iterables or even None, in turn allowing them to simply return their superclass' chunks iterators directly instead of having to unpack them.

Class Int16BE

MRO: PacketField
A PacketFiled which parses and transcribes the struct format '>h'.

Class Int16LE

MRO: PacketField
A PacketFiled which parses and transcribes the struct format '<h'.

Class Int32BE

MRO: PacketField
A PacketFiled which parses and transcribes the struct format '>l'.

Class Int32LE

MRO: PacketField
A PacketFiled which parses and transcribes the struct format '<l'.

Class ListField

MRO: PacketField
A field which is a list of other fields.

Function multi_struct_field(struct_format, subvalue_names=None, class_name=None)

Factory for PacketField subclasses build around complex struct formats.

Paramaters:

  • struct_format: the struct format string
  • subvalue_names: an optional namedtuple field name list; if supplied then the field value will be a namedtuple with these names
  • class_name: option name for the generated class

Class Packet

MRO: PacketField
Base class for compound objects derived from binary data.

Class PacketField

A record for an individual packet field.

Function struct_field(struct_format, class_name=None)

Factory for PacketField subclasses built around a single struct format.

Function structtuple(class_name, struct_format, subvalue_names)

Convenience wrapper for multi_struct_field.

Class UInt16BE

MRO: PacketField
A PacketFiled which parses and transcribes the struct format '>H'.

Class UInt16LE

MRO: PacketField
A PacketFiled which parses and transcribes the struct format '<H'.

Class UInt32BE

MRO: PacketField
A PacketFiled which parses and transcribes the struct format '>L'.

Class UInt32LE

MRO: PacketField
A PacketFiled which parses and transcribes the struct format '<L'.

Class UInt64BE

MRO: PacketField
A PacketFiled which parses and transcribes the struct format '>Q'.

Class UInt64LE

MRO: PacketField
A PacketFiled which parses and transcribes the struct format '<Q'.

Class UInt8

MRO: PacketField
A PacketFiled which parses and transcribes the struct format 'B'.

Class UTF8NULField

MRO: PacketField
A NUL terminated UTF-8 string.

Release files for cs-binary 20180801

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cs-binary 20180801
File Size Uploaded
cs.binary-20180801.tar.gz 7.0 kB Details

Release files / cs.binary-20180801.tar.gz

Download URL cs.binary-20180801.tar.gz
Size 7.0 kB
Tags Source
SHA-256 checksum
How to use checksums
72ed8c091a5f260ddd43e942e5a1ee5123f020818bfadb175d0484eebbd9b671
BLAKE2b-256 checksum
How to use checksums
ac1f36cd473ce89ccee42719ba7ec9e3f80a42faa781438ef3004f3808ce5856
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.23.0 CPython/3.6.6
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page