use crate::sys;
#[derive(Copy, Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
#[repr(u8)]
pub enum SequenceStyle {
Block = sys::YAML_BLOCK_SEQUENCE_STYLE as _,
Flow = sys::YAML_FLOW_SEQUENCE_STYLE as _,
}
impl SequenceStyle {
pub fn from_raw(raw: sys::yaml_sequence_style_t) -> Option<Self> {
match raw {
sys::YAML_BLOCK_SEQUENCE_STYLE => Some(Self::Block),
sys::YAML_FLOW_SEQUENCE_STYLE => Some(Self::Flow),
_ => None,
}
}
pub fn into_raw(self) -> sys::yaml_sequence_style_t {
match self {
Self::Block => sys::YAML_BLOCK_SEQUENCE_STYLE,
Self::Flow => sys::YAML_FLOW_SEQUENCE_STYLE,
}
}
pub fn option_into_raw(value: Option<Self>) -> sys::yaml_sequence_style_t {
value.map_or(sys::YAML_ANY_SEQUENCE_STYLE, Self::into_raw)
}
}