zenoh library

Dart bindings for the Zenoh pub/sub/query protocol via FFI.

⛔ EVERY DIRECTIVE BELOW ALLOW-LISTS. A bare export 'src/x.dart'; hands out every public declaration that file will EVER carry, so a helper added to it in some later unit joins this package's public API with nobody having decided that. A show clause makes the decision explicit and makes each addition to it a reviewable line.

⚠️ SO AN EXCLUSION IS NOW AN OMISSION, NOT A CLAUSE. The names called out in the comments below are not fenced by a hide any more; they are simply absent from a show. Nothing else marks them, which is why each one is named here with its ground.

The lists are derived from the per-file public-declaration census (scripts/instruments/export_surface.dart), not written by hand, and are sorted the way combinators_ordering wants them: plain case-sensitive comparison, so uppercase sorts before lowercase.

Classes

Config
A Zenoh configuration.
Encoding
Represents the encoding of a zenoh payload.
EntityGlobalId
A globally-unique identifier for a Zenoh entity (e.g. a queryable, publisher).
Hello
A hello message received during network scouting.
KeyExpr
A Zenoh key expression.
LivelinessToken
A liveliness token that advertises the session's presence on a key expression for as long as it remains undeclared.
LogRecord
One log record emitted by zenoh's own runtime, delivered to a host sink.
Publisher
A zenoh publisher for efficiently publishing multiple messages on a single key expression.
PullQueryable
A queryable whose queries accumulate in a bounded channel, taken out on demand.
PullReplies
A bounded channel of query replies: replies accumulate and the caller takes them out on demand.
PullSubscriber
A zenoh pull subscriber: samples accumulate in a bounded channel and the caller takes them out on demand.
Querier
A zenoh querier for efficiently sending multiple queries on a single key expression with pre-configured options.
Query
A received query on a queryable key expression.
Queryable
A zenoh queryable that receives queries on a key expression.
RecvData<T>
The channel delivered a value.
RecvDisconnected<T>
The channel was dropped; nothing will ever arrive.
RecvEmpty<T>
The channel is alive; its buffer is empty right now.
RecvResult<T>
The outcome of a single tryRecv/recv on a bounded channel of T.
Reply
A reply received from a get operation, representing either a successful sample or an error.
ReplyError
An error payload returned by a queryable instead of a successful reply.
Sample
A sample received from a subscriber.
SampleChannel
The ReceivePort / StreamController pair behind every sample-carrying surface, plus the delivered-tracking that a retained payload needs.
Session
A Zenoh session.
Subscriber
A zenoh subscriber that receives samples on a key expression.
Timestamp
A zenoh timestamp: a 24-byte z_timestamp_t value.
ZBytes
A Zenoh byte payload.
ZBytesWriter
A zenoh bytes writer for assembling raw byte payloads.
ZDeserializer
A zenoh deserializer for reading structured payloads.
Zenoh
Top-level zenoh utilities.
ZenohId
A 16-byte zenoh entity identifier.
ZSerializer
A zenoh serializer for building structured payloads.

Enums

ChannelKind
Which bounded channel backs a pull handle — and therefore what happens when it fills up.
CongestionControl
Controls the behavior when the outgoing buffer is full.
ConsolidationMode
The consolidation mode for replies to a get query.
Locality
Restricts which peers an operation reaches, or accepts traffic from.
LogSeverity
Severity of a zenoh log record, and the ceiling a host sink installs at.
Priority
The priority of a zenoh message.
QueryTarget
The target of a get query.
ReplyKeyExpr
Which key expressions a query accepts replies on.
SampleKind
The kind of a sample (put or delete).
WhatAmI
The type of a zenoh entity (router, peer, or client).

Exceptions / Errors

ZenohException
Exception thrown when a zenoh operation fails.