strata/framing.rs
1use crate::encode::encode;
2use crate::value::Value;
3
4const STRATA_MAGIC: &[u8; 7] = b"STRATA1";
5const STRATA_VERSION: u8 = 0x01;
6
7pub fn encode_framed(value: &Value) -> Vec<u8> {
8 let mut out = Vec::new();
9
10 out.extend_from_slice(STRATA_MAGIC);
11 out.push(STRATA_VERSION);
12 out.extend_from_slice(&encode(value).unwrap());
13
14 out
15}