use crate::{db::data::ScalarSlotValueRef, value::Value};
use std::cell::OnceCell;
#[derive(Debug, Default)]
pub(in crate::db::data::persisted_row) struct CachedSlotValue<'a> {
pub(in crate::db::data::persisted_row) validated: OnceCell<ScalarSlotValueRef<'a>>,
pub(in crate::db::data::persisted_row) materialized: OnceCell<Value>,
}
pub(super) fn build_initial_slot_cache<'a>(field_count: usize) -> Vec<CachedSlotValue<'a>> {
std::iter::repeat_with(CachedSlotValue::default)
.take(field_count)
.collect()
}