nodedb_array/schema/
cell_order.rs1use serde::{Deserialize, Serialize};
6
7#[derive(
13 Debug,
14 Clone,
15 Copy,
16 Default,
17 PartialEq,
18 Eq,
19 Serialize,
20 Deserialize,
21 zerompk::ToMessagePack,
22 zerompk::FromMessagePack,
23)]
24#[serde(rename_all = "snake_case")]
25#[msgpack(c_enum)]
26pub enum CellOrder {
27 RowMajor,
28 ColMajor,
29 #[default]
30 Hilbert,
31 ZOrder,
32}
33
34#[derive(
37 Debug,
38 Clone,
39 Copy,
40 Default,
41 PartialEq,
42 Eq,
43 Serialize,
44 Deserialize,
45 zerompk::ToMessagePack,
46 zerompk::FromMessagePack,
47)]
48#[serde(rename_all = "snake_case")]
49#[msgpack(c_enum)]
50pub enum TileOrder {
51 RowMajor,
52 ColMajor,
53 #[default]
54 Hilbert,
55 ZOrder,
56}
57
58#[cfg(test)]
59mod tests {
60 use super::*;
61
62 #[test]
63 fn defaults_are_hilbert() {
64 assert_eq!(CellOrder::default(), CellOrder::Hilbert);
65 assert_eq!(TileOrder::default(), TileOrder::Hilbert);
66 }
67}