mod highlevel;
pub use highlevel::*;
mod client_logging;
pub mod schema_deser;
mod server_logging;
pub use client_logging::{ClientLogging, ClientLoggingOptions};
pub use server_logging::{ServerLogging, ServerLoggingOptions};
pub use vox_service_macros::service;
pub use facet;
pub use facet_reflect;
pub use facet_reflect::Peek;
pub use vox_postcard;
pub mod hash {
pub use vox_types::{
method_descriptor, method_descriptor_with_retry, method_id_name_only,
shape_contains_channel,
};
}
pub use vox_types::{
Backing,
BoxMiddlewareFuture,
Call,
ChannelId,
ChannelRetryMode,
ClientCallOutcome,
ClientContext,
ClientMiddleware,
ClientRequest,
Conduit,
ConduitAcceptor,
ConduitRx,
ConduitTx,
ConnectionId,
ConnectionSettings,
Extensions,
Handler,
HandshakeResult,
Link,
LinkRx,
LinkTx,
MaybeSend,
MaybeSync,
MessageFamily,
Metadata,
MetadataEntry,
MetadataFlags,
MetadataValue,
MethodDescriptor,
MethodId,
MsgFamily,
OPERATION_ID_METADATA_KEY,
Parity,
Payload,
RETRY_SUPPORT_METADATA_KEY,
RETRY_SUPPORT_VERSION,
ReplySink,
RequestCall,
RequestContext,
RequestResponse,
ResponseParts,
RetryPolicy,
Rx,
RxError,
SchemaRecvTracker,
SelfRef,
ServerCallOutcome,
ServerMiddleware,
ServerRequest,
ServerResponse,
ServerResponseContext,
ServerResponsePayload,
ServiceDescriptor,
SessionRole,
SinkCall,
TransportMode,
Tx,
TxError,
VoxError,
WithTracker,
channel,
ensure_channel_retry_mode,
metadata_get_str,
metadata_get_u64,
observe_reply,
};
#[cfg(feature = "runtime")]
pub use vox_core::{
acceptor_conduit, acceptor_on, acceptor_transport, initiator, initiator_conduit, initiator_on,
initiator_transport,
};
#[cfg(feature = "runtime")]
pub use vox_core::{acceptor_on_link, initiator_on_link};
#[cfg(feature = "runtime")]
pub use vox_core::{
ConnectionHandle, ConnectionRequest, ConnectionState, PendingConnection, Session,
SessionAcceptOutcome, SessionConfig, SessionError, SessionHandle, SessionKeepaliveConfig,
SessionRegistry,
};
#[cfg(feature = "runtime")]
pub use vox_core::{AcceptorFn, ConnectionAcceptor, acceptor_fn, proxy_connections};
#[cfg(feature = "runtime")]
pub use vox_core::{
BoxSessionFuture, SessionAcceptorBuilder, SessionInitiatorBuilder,
SessionSourceInitiatorBuilder, SessionTransportAcceptorBuilder,
SessionTransportInitiatorBuilder, VOX_SERVICE_METADATA_KEY,
};
#[cfg(feature = "runtime")]
pub use vox_core::{
Caller, Driver, DriverCaller, DriverChannelSink, DriverReplySink, ErasedHandler,
FromVoxSession, NoopClient,
};
#[cfg(feature = "runtime")]
pub use vox_core::{BareConduit, BareConduitError, IntoConduit, MessagePlan};
#[cfg(all(feature = "runtime", not(target_arch = "wasm32")))]
pub use vox_core::{
Attachment, LinkSource, SingleAttachmentSource, SplitLink, StableConduit, StableConduitError,
prepare_acceptor_attachment, recv_client_hello, single_attachment_source, single_link_source,
};
#[cfg(all(feature = "runtime", not(target_arch = "wasm32")))]
pub use vox_core::{MemoryLink, MemoryLinkRx, MemoryLinkRxError, MemoryLinkTx, memory_link_pair};
#[cfg(feature = "runtime")]
pub use vox_core::{HandshakeError, handshake_as_acceptor, handshake_as_initiator};
#[cfg(feature = "runtime")]
pub use vox_core::{accept_transport, initiate_transport};
#[cfg(feature = "runtime")]
pub use vox_core::{InMemoryOperationStore, OperationState, OperationStore, SealedResponse};
#[cfg(feature = "runtime")]
pub use vox_core::{DynConduitRx, DynConduitTx};
pub mod transport {
#[cfg(feature = "transport-tcp")]
pub mod tcp {
pub use vox_stream::{StreamLink, TcpLinkSource, tcp_link_source};
}
#[cfg(feature = "transport-local")]
pub mod local {
pub use vox_stream::{
LocalLink, LocalLinkAcceptor, LocalLinkSource, LocalListener, LocalServerStream,
LocalStream, connect, endpoint_exists, local_link_source, path_to_pipe_name,
remove_endpoint,
};
}
#[cfg(feature = "transport-websocket")]
pub mod websocket {
pub use vox_websocket::*;
}
}
pub use vox_types::channel::{set_channel_binder, with_channel_binder};
pub mod session {
pub use vox_types::{MethodDescriptor, RetryPolicy, ServiceDescriptor};
}