pamoja.zenoh

Idiomatic Zenoh key-expression facade.

A key expression is how a Zenoh network addresses data: a slash-separated path that may carry the * and ** wildcards, so one subscriber names a whole subtree of a fleet rather than each node in it.

Only the naming rules cross. Running a Zenoh session needs the std-only zenoh stack, which would land in every wheel, so it stays in the Rust crate.

 1"""Idiomatic Zenoh key-expression facade.
 2
 3A key expression is how a Zenoh network addresses data: a slash-separated path
 4that may carry the ``*`` and ``**`` wildcards, so one subscriber names a whole
 5subtree of a fleet rather than each node in it.
 6
 7Only the naming rules cross. Running a Zenoh session needs the std-only zenoh
 8stack, which would land in every wheel, so it stays in the Rust crate.
 9"""
10
11from __future__ import annotations
12
13from pamoja._native import (
14    keyexpr_canonize as canonize,
15    keyexpr_is_canon as is_canon,
16    keyexpr_is_valid as is_valid,
17    keyexpr_matches as matches,
18)
19
20__all__ = [
21    "canonize",
22    "is_canon",
23    "is_valid",
24    "matches",
25]
def canonize(key):

Rewrites a key expression into its canonical form, or None if it is malformed.

def is_canon(key):

Reports whether a key expression is already in its canonical form.

def is_valid(key):

Reports whether a key expression is well formed.

def matches(pattern, key):

Reports whether a pattern selects a key.