pub trait ServerTypes: Sized {
type Server: Server<Self>;
type LocalService: LocalService<Self>;
type LocalServiceFut: Future<Output = Result<Self::LocalService>>;
type ServiceEventStream: Stream<Item = Result<ServiceEvent<Self>>>;
type ServiceWriteType: ToOwned<Owned = Vec<u8>>;
type ReadResponder: ReadResponder;
type WriteResponder: WriteResponder;
type IndicateConfirmationStream: Stream<Item = Result<ConfirmationEvent>>;
}
Expand description
Servers and services are defined with respect to ServerTypes. Implementation crates provide an object which relates this constellation of types to each other, used to provide concrete types for library crates to paramaterize on.
Required Associated Types§
type Server: Server<Self>
type LocalService: LocalService<Self>
type LocalServiceFut: Future<Output = Result<Self::LocalService>>
type ServiceEventStream: Stream<Item = Result<ServiceEvent<Self>>>
type ServiceWriteType: ToOwned<Owned = Vec<u8>>
type ReadResponder: ReadResponder
type WriteResponder: WriteResponder
type IndicateConfirmationStream: Stream<Item = Result<ConfirmationEvent>>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.