# Zenohex v0.9.1-beta.1 - Table of Contents

> Zenoh client library for elixir.

## Pages

- [Zenohex](readme.md)
- [LICENSE](license.md)

## Modules

- [Zenohex](Zenohex.md): Zenohex is a thin Elixir wrapper around Zenoh, implemented using Rustler.
- [Zenohex.Config](Zenohex.Config.md): Utility functions for working with Zenoh session configurations.
- [Zenohex.ConfigMap](Zenohex.ConfigMap.md): Elixir-like map-centric utility functions for Zenoh session configurations.
- [Zenohex.KeyExpr](Zenohex.KeyExpr.md): Provides utility functions for working with Zenoh key expressions (keyexpr).
- [Zenohex.Liveliness](Zenohex.Liveliness.md): A LivelinessToken is a token which liveliness is tied to the Zenoh Session
and can be monitored by remote applications.
- [Zenohex.Matching](Zenohex.Matching.md): Interface for querying current matching status and listening for status changes
for publishers and queriers.
- [Zenohex.Matching.Status](Zenohex.Matching.Status.md): Matching status for a publisher or querier.

- [Zenohex.Nif.Logger](Zenohex.Nif.Logger.md): Developer utility for interacting with the native logger.
- [Zenohex.Publisher](Zenohex.Publisher.md): Interface for publishing data via native Zenoh publishers.
- [Zenohex.Querier](Zenohex.Querier.md): Interface for reusable Zenoh queriers via the native layer.
- [Zenohex.Query](Zenohex.Query.md): Represents an incoming Zenoh query and provides functions for replying to it.
- [Zenohex.Query.ReplyError](Zenohex.Query.ReplyError.md): A struct that corresponds one-to-one to `zenoh::query::ReplyError`.
- [Zenohex.Queryable](Zenohex.Queryable.md): Interface for managing queryable entities in the Zenoh native layer.
- [Zenohex.Sample](Zenohex.Sample.md): A struct that corresponds one-to-one to `zenoh::sample::Sample`.
- [Zenohex.Scouting](Zenohex.Scouting.md): Provides functions for Zenoh scouting, which allows discovery of peers and routers.
- [Zenohex.Scouting.Hello](Zenohex.Scouting.Hello.md): A struct that corresponds one-to-one to `zenoh::scouting::Hello`.
- [Zenohex.Session](Zenohex.Session.md): Interface for managing Zenoh sessions and related operations.
- [Zenohex.Session.Info](Zenohex.Session.Info.md): A struct that corresponds one-to-one to `zenoh::session::SessionInfo`.
- [Zenohex.Subscriber](Zenohex.Subscriber.md): Interface for managing Zenoh subscribers via the native layer.

- Examples
  - [Zenohex.Examples.LivelinessSubscriber](Zenohex.Examples.LivelinessSubscriber.md): Example `GenServer` implementation of `LivelinessSubscriber`
using `Zenohex.Liveliness.declare_subscriber/3`.
  - [Zenohex.Examples.Publisher](Zenohex.Examples.Publisher.md): Example `GenServer` implementation of `Publisher`
using `Zenohex.Session.declare_publisher/3`.
  - [Zenohex.Examples.Querier](Zenohex.Examples.Querier.md): Example `GenServer` implementation of `Querier`
using `Zenohex.Session.declare_querier/3`.
  - [Zenohex.Examples.Queryable](Zenohex.Examples.Queryable.md): Example `GenServer` implementation of `Queryable`
using `Zenohex.Session.declare_queryable/4`.
  - [Zenohex.Examples.Scout](Zenohex.Examples.Scout.md): Example `GenServer` implementation of `Scout`
using `Zenohex.Scouting.declare_scout/3`.
  - [Zenohex.Examples.Subscriber](Zenohex.Examples.Subscriber.md): Example `GenServer` implementation of `Subscriber`
using `Zenohex.Session.declare_subscriber/4`.
  - [Zenohex.Examples.Plugins.StorageBackendFs](Zenohex.Examples.Plugins.StorageBackendFs.md): Example usage of the [zenoh-plugin-storage-manager](https://zenoh.io/docs/manual/plugin-storage-manager/).

