psi_device_tree 2.2.0

Reads and parses Linux device tree images
Documentation
use alloc::vec::Vec;

pub struct StringTable {
    pub buffer: Vec<u8>,
}

impl Default for StringTable {
    fn default() -> Self {
        StringTable::new()
    }
}

impl StringTable {
    pub fn new() -> StringTable {
        StringTable { buffer: Vec::new() }
    }

    pub fn add_string(&mut self, val: &str) -> u32 {
        let offset = self.buffer.len();
        self.buffer.extend(val.bytes());
        self.buffer.push(0);
        offset as u32
    }
}