Stream infrastructure for MoaT applications
Project description
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.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file moat_lib_stream-0.3.1.tar.gz.
File metadata
- Download URL: moat_lib_stream-0.3.1.tar.gz
- Upload date:
- Size: 22.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e6ac3e5a9ba45570a9f5815c25030962fb6fc109efc44f48d20631c5208a3893
|
|
| MD5 |
460909d3d0d5efb6e86c054a68822edd
|
|
| BLAKE2b-256 |
5fceb8846f7f21e3228421186ad503d019872c938c149d26480c26fe9d20e806
|
File details
Details for the file moat_lib_stream-0.3.1-py3-none-any.whl.
File metadata
- Download URL: moat_lib_stream-0.3.1-py3-none-any.whl
- Upload date:
- Size: 27.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d7330565dd02ddf323fed90b5156876d11cf28ef24c5698ba43e3cd7840b128
|
|
| MD5 |
0f2a00689bae1ecd95b6bf3cd385c381
|
|
| BLAKE2b-256 |
bd7d3990308a1b8257499348969cbfe573b2a2beb816f4a43d366ace5293921e
|