macro_rules! cancel {
($request_id: expr) => { ... };
($request_id: expr, $options:expr) => { ... };
}
Expand description
§Cancel Macro - wamp-proto
Macro that allows for default empty implementation of options object on Cabcel.
§Examples
use wamp_core::messages::{self, Cancel};
use wamp_core::cancel;
use serde_json::json;
// Construct with default empty options object
let request_id = 1;
let mut cancel_message = cancel!(request_id);
assert_eq!(cancel_message.options, json!({}));
// Construct with custom options
let cancel_message2 = cancel!(1, json!({
"key": "value"
}));
assert_ne!(cancel_message, cancel_message2);
cancel_message.options = json!({ "key": "value" });
assert_eq!(cancel_message, cancel_message2);
// These macro invocations are the same as the following:
let cancel_message3 = Cancel {
request_id: 1,
options: json!({
"key": "value"
})
};
assert_eq!(cancel_message, cancel_message3);
assert_eq!(cancel_message2, cancel_message3);