pub struct ModuleIpcClient { /* private fields */ }Expand description
IPC client for modules to communicate with node
Implementations§
Source§impl ModuleIpcClient
impl ModuleIpcClient
Sourcepub async fn connect<P>(socket_path: P) -> Result<ModuleIpcClient, ModuleError>
pub async fn connect<P>(socket_path: P) -> Result<ModuleIpcClient, ModuleError>
Connect to node IPC socket
Sourcepub async fn request(
&mut self,
request: RequestMessage,
) -> Result<ResponseMessage, ModuleError>
pub async fn request( &mut self, request: RequestMessage, ) -> Result<ResponseMessage, ModuleError>
Send a request and wait for response
Sourcepub async fn send_log(
&mut self,
level: LogLevel,
module_id: &str,
message: &str,
target: Option<&str>,
) -> Result<(), ModuleError>
pub async fn send_log( &mut self, level: LogLevel, module_id: &str, message: &str, target: Option<&str>, ) -> Result<(), ModuleError>
Send a log message to the node
Sourcepub async fn receive_message(
&mut self,
) -> Result<Option<ModuleMessage>, ModuleError>
pub async fn receive_message( &mut self, ) -> Result<Option<ModuleMessage>, ModuleError>
Receive the next message (blocking). Returns Event, Invocation, or other message types.
Sourcepub async fn send_invocation_result(
&mut self,
result: InvocationResultMessage,
) -> Result<(), ModuleError>
pub async fn send_invocation_result( &mut self, result: InvocationResultMessage, ) -> Result<(), ModuleError>
Send invocation result back to the node
Sourcepub async fn receive_event(
&mut self,
) -> Result<Option<ModuleMessage>, ModuleError>
pub async fn receive_event( &mut self, ) -> Result<Option<ModuleMessage>, ModuleError>
Receive an event message (non-blocking)
Sourcepub fn next_correlation_id(&mut self) -> u64
pub fn next_correlation_id(&mut self) -> u64
Get next correlation ID
Auto Trait Implementations§
impl Freeze for ModuleIpcClient
impl RefUnwindSafe for ModuleIpcClient
impl Send for ModuleIpcClient
impl Sync for ModuleIpcClient
impl Unpin for ModuleIpcClient
impl UnsafeUnpin for ModuleIpcClient
impl UnwindSafe for ModuleIpcClient
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§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> 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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§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>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.