Enum hardlight::ServerMessage
source · pub enum ServerMessage {
RPCResponse {
id: u8,
output: Result<Vec<u8>, RpcHandlerError>,
},
NewEvent {
event: Vec<u8>,
},
StateChange(Vec<(usize, Vec<u8>)>),
}
Variants§
RPCResponse
Fields
§
id: u8
A unique counter for each RPC call. This is used to match responses to requests. It restricts the number of concurrent operations to 256. Active operations cannot reuse the same ID, therefore IDs of completed requests can be reused.
§
output: Result<Vec<u8>, RpcHandlerError>
The function’s output serialized with rkyv. The format of this message will differ with each application. The macros handle generating the code for this.
A message from the server with the output of a client’s method call.
NewEvent
Fields
A message from the server with a new event.
StateChange(Vec<(usize, Vec<u8>)>)
The server updates the connection state.
Trait Implementations§
source§impl Archive for ServerMessagewhere
u8: Archive,
Result<Vec<u8>, RpcHandlerError>: Archive,
Vec<u8>: Archive,
Vec<(usize, Vec<u8>)>: Archive,
impl Archive for ServerMessagewhere u8: Archive, Result<Vec<u8>, RpcHandlerError>: Archive, Vec<u8>: Archive, Vec<(usize, Vec<u8>)>: Archive,
§type Archived = ArchivedServerMessage
type Archived = ArchivedServerMessage
The archived representation of this type. Read more
§type Resolver = ServerMessageResolver
type Resolver = ServerMessageResolver
The resolver for this type. It must contain all the additional information from serializing
needed to make the archived type from the normal type.
source§impl<__D: Fallible + ?Sized> Deserialize<ServerMessage, __D> for Archived<ServerMessage>where
u8: Archive,
Archived<u8>: Deserialize<u8, __D>,
Result<Vec<u8>, RpcHandlerError>: Archive,
Archived<Result<Vec<u8>, RpcHandlerError>>: Deserialize<Result<Vec<u8>, RpcHandlerError>, __D>,
Vec<u8>: Archive,
Archived<Vec<u8>>: Deserialize<Vec<u8>, __D>,
Vec<(usize, Vec<u8>)>: Archive,
Archived<Vec<(usize, Vec<u8>)>>: Deserialize<Vec<(usize, Vec<u8>)>, __D>,
impl<__D: Fallible + ?Sized> Deserialize<ServerMessage, __D> for Archived<ServerMessage>where u8: Archive, Archived<u8>: Deserialize<u8, __D>, Result<Vec<u8>, RpcHandlerError>: Archive, Archived<Result<Vec<u8>, RpcHandlerError>>: Deserialize<Result<Vec<u8>, RpcHandlerError>, __D>, Vec<u8>: Archive, Archived<Vec<u8>>: Deserialize<Vec<u8>, __D>, Vec<(usize, Vec<u8>)>: Archive, Archived<Vec<(usize, Vec<u8>)>>: Deserialize<Vec<(usize, Vec<u8>)>, __D>,
source§fn deserialize(
&self,
deserializer: &mut __D
) -> Result<ServerMessage, __D::Error>
fn deserialize( &self, deserializer: &mut __D ) -> Result<ServerMessage, __D::Error>
Deserializes using the given deserializer
Auto Trait Implementations§
impl !ArchiveCopy for ServerMessage
impl RefUnwindSafe for ServerMessage
impl Send for ServerMessage
impl Sync for ServerMessage
impl Unpin for ServerMessage
impl UnwindSafe for ServerMessage
Blanket Implementations§
source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
source§impl<T> ArchiveUnsized for Twhere
T: Archive,
impl<T> ArchiveUnsized for Twhere T: Archive,
§type Archived = <T as Archive>::Archived
type Archived = <T as Archive>::Archived
The archived counterpart of this type. Unlike
Archive
, it may be unsized. Read more§type MetadataResolver = ()
type MetadataResolver = ()
The resolver for the metadata of this type. Read more
source§unsafe fn resolve_metadata(
&self,
_: usize,
_: <T as ArchiveUnsized>::MetadataResolver,
_: *mut <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
)
unsafe fn resolve_metadata( &self, _: usize, _: <T as ArchiveUnsized>::MetadataResolver, _: *mut <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata )
Creates the archived version of the metadata for this value at the given position and writes
it to the given output. Read more
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere W: DeserializeWith<F, T, D>, D: Fallible + ?Sized, F: ?Sized,
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.