noodles_cram/record/data/field/value/
array.rs1mod values;
2
3use noodles_sam as sam;
4
5pub use self::values::Values;
6
7#[derive(Clone, Debug, PartialEq)]
8pub enum Array<'c> {
9 Int8(Values<'c, i8>),
10 UInt8(Values<'c, u8>),
11 Int16(Values<'c, i16>),
12 UInt16(Values<'c, u16>),
13 Int32(Values<'c, i32>),
14 UInt32(Values<'c, u32>),
15 Float(Values<'c, f32>),
16}
17
18impl<'r: 'c, 'c: 'r> From<&'r Array<'c>> for sam::alignment::record::data::field::value::Array<'c> {
19 fn from(array: &'r Array<'c>) -> Self {
20 match array {
21 Array::Int8(values) => Self::Int8(Box::new(values)),
22 Array::UInt8(values) => Self::UInt8(Box::new(values)),
23 Array::Int16(values) => Self::Int16(Box::new(values)),
24 Array::UInt16(values) => Self::UInt16(Box::new(values)),
25 Array::Int32(values) => Self::Int32(Box::new(values)),
26 Array::UInt32(values) => Self::UInt32(Box::new(values)),
27 Array::Float(values) => Self::Float(Box::new(values)),
28 }
29 }
30}