remarkable_lines/other/
layer.rs

1use crate::{bitreader::Readable, ParseError};
2
3use super::{line::Line, Parse};
4
5#[derive(Debug)]
6pub struct Layer {
7    pub lines: Vec<Line>,
8}
9
10impl Parse for Layer {
11    fn parse(
12        version: u32,
13        reader: &mut crate::Bitreader<impl Readable>,
14    ) -> Result<Self, crate::ParseError> {
15        let amount_lines = reader.read_u32()?;
16        let lines = (0..amount_lines)
17            .map(|_| Line::parse(version, reader))
18            .collect::<Result<Vec<Line>, ParseError>>()?;
19        Ok(Layer { lines })
20    }
21}