in crates/iceberg/src/spec/datatypes.rs [116:128]
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
where
D: Deserializer<'de>,
{
let s = String::deserialize(deserializer)?;
if s.starts_with("decimal") {
deserialize_decimal(s.into_deserializer())
} else if s.starts_with("fixed") {
deserialize_fixed(s.into_deserializer())
} else {
PrimitiveType::deserialize(s.into_deserializer())
}
}