sdf_metadata/metadata/metadata/
sdf_keyed_state_value.rs

1use wit_encoder::TypeDef;
2
3use crate::wit::metadata::SdfKeyedStateValue;
4
5impl SdfKeyedStateValue {
6    pub fn wit_type_def(&self, name: &str) -> TypeDef {
7        let name = name.to_owned();
8        match self {
9            SdfKeyedStateValue::U32 => TypeDef::type_(name, wit_encoder::Type::U32),
10            SdfKeyedStateValue::ArrowRow(row) => {
11                TypeDef::new(name, wit_encoder::TypeDefKind::Record(row.wit_record()))
12            }
13            SdfKeyedStateValue::Unresolved(type_ref) => TypeDef::type_(name, type_ref.wit_type()),
14        }
15    }
16}