include!("../../generated/generated_vhea.rs");
#[derive(Clone)]
pub enum SelectedVhea<'a> {
Original(Vhea<'a>),
Extended(VheaExtended<'a>),
}
impl SelectedVhea<'_> {
pub fn number_of_long_ver_metrics(&self) -> u32 {
match self {
Self::Original(table) => table.number_of_long_ver_metrics().into(),
Self::Extended(table) => table.number_of_long_ver_metrics(),
}
}
pub fn advance_height_max(&self) -> UfWord {
match self {
Self::Original(table) => table.advance_height_max(),
Self::Extended(table) => UfWord::new(table.advance_height_max().to_i16() as u16),
}
}
selected_table_getters!(
version -> Version16Dot16,
ascender -> FWord,
descender -> FWord,
line_gap -> FWord,
min_top_side_bearing -> FWord,
min_bottom_side_bearing -> FWord,
y_max_extent -> FWord,
caret_slope_rise -> i16,
caret_slope_run -> i16,
caret_offset -> i16,
metric_data_format -> i16,
);
}