remarkable_lines/other/
layer.rs1use 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}