Stream Infrastructure
% start synopsis % start main
This module provides base classes for handling data streams in a structured manner.
% end synopsis
Overview
This package implements infrastructure for building layered communication stacks:
- BaseMsg - Message-based communication (Python objects)
- BaseBlk - Block-based communication (delimited bytestrings)
- BaseBuf - Buffer-based communication (undelimited bytestreams)
Layered Communication Stacks
Build communication stacks by layering protocols:
from moat.lib.stream import StackedBlk
class Compression(StackedBlk):
async def snd(self, blk):
compressed = compress(blk)
await self.s.send(compressed)
async def rcv(self):
blk = await self.s.recv()
return decompress(blk)
# Stack layers
link = SerialLink(cfg) # BaseBuf
link = Packetizer(link, cfg) # StackedBlk
link = Compressor(link, cfg) # StackedBlk
link = Codec(link, cfg) # StackedMsg
async with link:
await link.send({"data": "hello"})
% end main
License
This project is part of the MoaT ecosystem and is licensed under the same terms.
Metadata
Release files for moat-lib-stream 0.3.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| moat_lib_stream-0.3.5.tar.gz | 27.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| moat_lib_stream-0.3.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 58.6 kB
Release files / moat_lib_stream-0.3.5.tar.gz
| Download URL | moat_lib_stream-0.3.5.tar.gz |
|---|---|
| Size | 27.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
43ff9dc6465fb6c16e8986088998865c3fb6d3a9da506884465239f702ffa8c0
|
|
BLAKE2b-256 checksum How to use checksums |
04b15e547ee5e7f4a2535b0997ac642a0dc19612b2ad72cc96a8c61cb5cf419f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / moat_lib_stream-0.3.5-py3-none-any.whl
| Download URL | moat_lib_stream-0.3.5-py3-none-any.whl |
|---|---|
| Size | 31.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
be6786cd92e954ce3e5d0704776d6a45526785fe4ab7de132b1cc367e48bc081
|
|
BLAKE2b-256 checksum How to use checksums |
b0698f3c59aa1e2d85b71362018c3d29798881e48809b1a0e51645704bf1a9cf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|