diff --git a/node-graph/graph-craft/src/document/value.rs b/node-graph/graph-craft/src/document/value.rs index 90d19bcc9f..370391240d 100644 --- a/node-graph/graph-craft/src/document/value.rs +++ b/node-graph/graph-craft/src/document/value.rs @@ -236,19 +236,21 @@ macro_rules! tagged_value { // MANUAL VARIANTS // =============== Self::None => concrete!(()), + // The list-typed defaults type by their element: depth is not a + // `Type` axis, it rides the layout proven at wiring. Self::TypeDefault(td) => { let name = td.name.as_ref(); - if name == std::any::type_name::>() { return core_types::registry::record_type::(); } - if name == std::any::type_name::>() { return core_types::registry::record_type::(); } - if name == std::any::type_name::>>() { return core_types::registry::record_type::>(); } - if name == std::any::type_name::>() { return core_types::registry::record_type::(); } - if name == std::any::type_name::>() { return core_types::registry::record_type::(); } + if name == std::any::type_name::>() { return concrete!(Graphic); } + if name == std::any::type_name::>() { return concrete!(Artboard); } + if name == std::any::type_name::>>() { return concrete!(Raster); } + if name == std::any::type_name::>() { return concrete!(Vector); } + if name == std::any::type_name::>() { return concrete!(String); } Type::Concrete(td.clone()) } - Self::F64Array(_) => core_types::registry::record_type::(), - Self::Color(_) => core_types::registry::record_type::(), - Self::Gradient(_) => core_types::registry::record_type::(), - Self::BrushStrokes(_) => core_types::registry::record_type::(), + Self::F64Array(_) => concrete!(f64), + Self::Color(_) => concrete!(Color), + Self::Gradient(_) => concrete!(GradientStops), + Self::BrushStrokes(_) => concrete!(BrushStroke), // ======================= // AUTO-GENERATED VARIANTS // =======================