use super::SQLResult;
use crate::expr::enums::{contains_enum_carrier, render_enum_labels, EnumLabelCatalog};
use crate::SQLError;
pub fn render_result_enum_labels(
catalog: Option<&dyn EnumLabelCatalog>,
result: &mut SQLResult,
) -> Result<(), SQLError> {
for row in &mut result.rows {
for value in row.values_mut() {
if contains_enum_carrier(value) {
*value = render_enum_labels(catalog, value)?;
}
}
}
for row in result.positional_rows.iter_mut().flatten() {
for value in row {
if contains_enum_carrier(value) {
*value = render_enum_labels(catalog, value)?;
}
}
}
Ok(())
}