pub const VERSION: &str = env!("CARGO_PKG_VERSION");
#[cfg(feature = "compute")]
pub mod compute;
pub mod config;
#[cfg(feature = "cortex")]
pub mod cortex;
#[cfg(feature = "dataforts")]
pub mod dataforts;
#[cfg(feature = "deck")]
pub mod deck;
pub mod error;
#[cfg(feature = "groups")]
pub mod groups;
#[cfg(feature = "net")]
pub mod mesh;
#[cfg(all(feature = "net", feature = "cortex"))]
pub mod mesh_rpc;
#[cfg(all(feature = "net", feature = "cortex"))]
pub mod mesh_rpc_resilience;
#[cfg(feature = "meshdb")]
pub mod meshdb;
#[cfg(feature = "meshos")]
pub mod meshos;
mod net;
#[cfg(feature = "redis")]
pub mod redis_dedup;
pub mod stream;
#[cfg(feature = "testing")]
pub mod testing;
#[cfg(feature = "tool")]
pub mod tool;
#[cfg(all(feature = "net", feature = "dataforts"))]
pub mod transport;
#[cfg(feature = "macros")]
pub mod macros {
pub use net_sdk_macros::tool;
}
#[cfg(feature = "redis")]
pub use redis_dedup::RedisStreamDedup;
#[cfg(feature = "net")]
pub mod capabilities;
#[cfg(feature = "net")]
pub mod identity;
#[cfg(feature = "net")]
pub mod subnets;
#[cfg(feature = "aggregator")]
pub mod aggregator;
pub use crate::net::{Net, PollRequest, PollResponse, Receipt, Stats};
pub use crate::config::{Backpressure, NetBuilder};
pub use crate::stream::{EventStream, SubscribeOpts, TypedEventStream};
pub use ::net::config::{BatchConfig, ScalingPolicy};
pub use ::net::consumer::Ordering;
pub use ::net::event::{Event, RawEvent, StoredEvent};
pub use ::net::Filter;
#[cfg(feature = "redis")]
pub use ::net::config::RedisAdapterConfig;
#[cfg(feature = "jetstream")]
pub use ::net::config::JetStreamAdapterConfig;
#[cfg(feature = "net")]
pub use ::net::adapter::net::NetAdapterConfig;
#[cfg(feature = "net")]
pub use ::net::adapter::net::{
CloseBehavior, Reliability, Stream as MeshStream, StreamConfig, StreamStats,
};
#[cfg(feature = "net")]
pub use ::net::adapter::net::{
AckReason, ChannelConfig, ChannelId, ChannelName, OnFailure, PublishConfig, PublishReport,
Visibility,
};
#[cfg(feature = "net")]
pub use crate::mesh::{Mesh, MeshBuilder, SubscribeOptions};
#[cfg(feature = "net")]
pub use ::net::adapter::net::MeshNode;
#[cfg(feature = "compute")]
pub use crate::compute::{
CausalEvent, CausalLink, DaemonError as ComputeDaemonError, DaemonHandle, DaemonHostConfig,
DaemonRuntime, DaemonStats, MeshDaemon, MigrationError, MigrationHandle, MigrationOpts,
MigrationPhase, StateSnapshot,
};
#[cfg(feature = "net")]
pub use crate::capabilities::{CapabilityFilter, CapabilitySet};
#[cfg(feature = "net")]
pub use crate::identity::{Identity, PermissionToken, TokenError, TokenScope};
#[cfg(feature = "net")]
pub use crate::subnets::{SubnetId, SubnetPolicy};
impl NetBuilder {
pub async fn build(self) -> error::Result<Net> {
Net::from_builder(self).await
}
}