1pub const VERSION: &str = env!("CARGO_PKG_VERSION");
42
43#[cfg(feature = "compute")]
44pub mod compute;
45pub mod config;
46#[cfg(feature = "cortex")]
47pub mod cortex;
48#[cfg(feature = "dataforts")]
49pub mod dataforts;
50#[cfg(feature = "deck")]
51pub mod deck;
52pub mod error;
53#[cfg(feature = "groups")]
54pub mod groups;
55#[cfg(feature = "net")]
56pub mod mesh;
57#[cfg(all(feature = "net", feature = "cortex"))]
58pub mod mesh_rpc;
59#[cfg(all(feature = "net", feature = "cortex"))]
60pub mod mesh_rpc_resilience;
61#[cfg(feature = "meshdb")]
62pub mod meshdb;
63#[cfg(feature = "meshos")]
64pub mod meshos;
65mod net;
66#[cfg(feature = "redis")]
67pub mod redis_dedup;
68pub mod stream;
69#[cfg(feature = "testing")]
70pub mod testing;
71
72#[cfg(feature = "redis")]
73pub use redis_dedup::RedisStreamDedup;
74
75#[cfg(feature = "net")]
80pub mod capabilities;
81#[cfg(feature = "net")]
82pub mod identity;
83#[cfg(feature = "net")]
84pub mod subnets;
85
86pub use crate::net::{Net, PollRequest, PollResponse, Receipt, Stats};
88
89pub use crate::config::{Backpressure, NetBuilder};
91
92pub use crate::stream::{EventStream, SubscribeOpts, TypedEventStream};
94
95pub use ::net::config::{BatchConfig, ScalingPolicy};
97pub use ::net::consumer::Ordering;
98pub use ::net::event::{Event, RawEvent, StoredEvent};
99pub use ::net::Filter;
100
101#[cfg(feature = "redis")]
103pub use ::net::config::RedisAdapterConfig;
104
105#[cfg(feature = "jetstream")]
106pub use ::net::config::JetStreamAdapterConfig;
107
108#[cfg(feature = "net")]
109pub use ::net::adapter::net::NetAdapterConfig;
110
111#[cfg(feature = "net")]
112pub use ::net::adapter::net::{
113 CloseBehavior, Reliability, Stream as MeshStream, StreamConfig, StreamStats,
114};
115
116#[cfg(feature = "net")]
120pub use ::net::adapter::net::{
121 AckReason, ChannelConfig, ChannelId, ChannelName, OnFailure, PublishConfig, PublishReport,
122 Visibility,
123};
124
125#[cfg(feature = "net")]
126pub use crate::mesh::{Mesh, MeshBuilder, SubscribeOptions};
127
128#[cfg(feature = "compute")]
131pub use crate::compute::{
132 CausalEvent, CausalLink, DaemonError as ComputeDaemonError, DaemonHandle, DaemonHostConfig,
133 DaemonRuntime, DaemonStats, MeshDaemon, MigrationError, MigrationHandle, MigrationOpts,
134 MigrationPhase, StateSnapshot,
135};
136
137#[cfg(feature = "net")]
141pub use crate::capabilities::{CapabilityFilter, CapabilitySet};
142#[cfg(feature = "net")]
143pub use crate::identity::{Identity, PermissionToken, TokenError, TokenScope};
144#[cfg(feature = "net")]
145pub use crate::subnets::{SubnetId, SubnetPolicy};
146
147impl NetBuilder {
148 pub async fn build(self) -> error::Result<Net> {
150 Net::from_builder(self).await
151 }
152}