dioxus/packages/desktop/src/events.rs

30 lines
664 B
Rust
Raw Normal View History

2022-02-13 19:56:11 +01:00
//! Convert a serialized event to an event trigger
use serde::{Deserialize, Serialize};
#[derive(Deserialize, Serialize)]
2022-02-13 19:56:11 +01:00
pub(crate) struct IpcMessage {
method: String,
params: serde_json::Value,
}
impl IpcMessage {
pub(crate) fn method(&self) -> &str {
self.method.as_str()
}
pub(crate) fn params(self) -> serde_json::Value {
self.params
}
}
pub(crate) fn parse_ipc_message(payload: &str) -> Option<IpcMessage> {
2022-02-15 13:38:06 -05:00
match serde_json::from_str(payload) {
2022-02-13 19:56:11 +01:00
Ok(message) => Some(message),
Err(e) => {
2022-02-18 23:30:09 -05:00
log::error!("could not parse IPC message, error: {}", e);
2022-02-13 19:56:11 +01:00
None
}
}
}