noodles_sam/header/record/value/map/header/
builder.rs1use super::{Header, Version};
2use crate::header::record::value::map::{self, builder::BuildError};
3
4#[derive(Debug, Default)]
6pub struct Builder {
7 version: Option<Version>,
8}
9
10impl map::Builder<Header> {
11 pub fn set_version(mut self, version: Version) -> Self {
27 self.inner.version = Some(version);
28 self
29 }
30}
31
32impl map::builder::Inner<Header> for Builder {
33 fn build(self) -> Result<Header, BuildError> {
34 Ok(Header {
35 version: self.version.unwrap_or_default(),
36 })
37 }
38}
39
40#[cfg(test)]
41mod tests {
42 use super::*;
43
44 #[test]
45 fn test_default() {
46 let builder = Builder::default();
47 assert!(builder.version.is_none());
48 }
49}