devicetree_tool/
reservation.rs1use crate::dts_generator::DtsGenerator;
5
6#[derive(Copy, Clone)]
8pub struct Reservation {
9 pub address: u64,
10 pub length: u64,
11}
12
13impl Reservation {
25 pub fn new(address: u64, length: u64) -> Self {
26 Reservation { address, length }
27 }
28}
29
30impl std::fmt::Display for Reservation {
31 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
33 let s = DtsGenerator::generate_reservation(self, 0);
34 write!(f, "{s}")
35 }
36}
37
38#[cfg(test)]
39mod tests {
40 use super::*;
41
42 #[test]
43 fn test_reservation_print() {
44 let reservation = Reservation::new(0x0, 0x100000);
45 let printing = format!("{}", reservation);
46 assert_eq!(
47 &printing,
48 "/memreserve/ 0x0000000000000000 0x0000000000100000;"
49 );
50 }
51}