pub struct Welcome {
pub session: u64,
pub details: Value,
}
Expand description
Welcome - wamp-proto
Represents an Welcome message in the WAMP protocol.
Examples
use wamp_core::messages::Welcome;
use wamp_core::welcome;
use serde_json::{json, Value};
let welcome_message = Welcome {
session: 1,
details: Value::Null
};
Serializer
Implements serde Serialize trait for welcome
use wamp_core::messages::Welcome;
use serde_json::{json, to_string};
// Create an welcome message
let welcome = Welcome {
session: 1,
details: json!({ "key": "value" })
};
// Establish raw json data string
let data = r#"[2,1,{"key":"value"}]"#;
// Here we convert it from an `welcome` frame, to a string representation.
let welcome = to_string(&welcome).unwrap();
// Confirm that our welcome frame strings are equal to each other
assert_eq!(welcome, data);
Deserializer
Implements serde Deserialize trait for welcome
use wamp_core::messages::Welcome;
use serde_json::from_str;
// Here is our raw json data string
let data = r#"[2,1,{}]"#;
// Here we convert it to an `Welcome` frame
let welcome = from_str::<Welcome>(data).unwrap();
// Confirm that our session and details deserialized
assert_eq!(welcome.session, 1);
assert_eq!(welcome.details, serde_json::json!({}));
Fields§
§session: u64
§details: Value
Trait Implementations§
source§impl<'de> Deserialize<'de> for Welcome
impl<'de> Deserialize<'de> for Welcome
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl PartialEq for Welcome
impl PartialEq for Welcome
source§impl WampMessage for Welcome
impl WampMessage for Welcome
impl Eq for Welcome
impl StructuralEq for Welcome
impl StructuralPartialEq for Welcome
Auto Trait Implementations§
impl RefUnwindSafe for Welcome
impl Send for Welcome
impl Sync for Welcome
impl Unpin for Welcome
impl UnwindSafe for Welcome
Blanket Implementations§
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