use alloc::vec::Vec;
use crate::{
common::ZExtUnknown,
zenoh::{query::ConsolidationMode, PushBody},
};
pub mod flag {
pub const C: u8 = 1 << 5; pub const Z: u8 = 1 << 7; }
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct Reply {
pub consolidation: ConsolidationMode,
pub ext_unknown: Vec<ZExtUnknown>,
pub payload: ReplyBody,
}
pub type ReplyBody = PushBody;
impl Reply {
#[cfg(feature = "test")]
#[doc(hidden)]
pub fn rand() -> Self {
use rand::Rng;
let mut rng = rand::thread_rng();
let payload = ReplyBody::rand();
let consolidation = ConsolidationMode::rand();
let mut ext_unknown = Vec::new();
for _ in 0..rng.gen_range(0..4) {
ext_unknown.push(ZExtUnknown::rand2(1, false));
}
Self {
consolidation,
ext_unknown,
payload,
}
}
}