From 7ef9dd2feb02302966ecfa203c477c2310e7f602 Mon Sep 17 00:00:00 2001 From: Warfa Jibril Date: Tue, 13 Feb 2024 11:27:08 -0800 Subject: [PATCH] added type_id to instance node --- pax-compiler/templates/cartridge_generation/cartridge.tera | 5 +++++ pax-runtime/src/rendering.rs | 3 +++ 2 files changed, 8 insertions(+) diff --git a/pax-compiler/templates/cartridge_generation/cartridge.tera b/pax-compiler/templates/cartridge_generation/cartridge.tera index b9c3decbb..1a48ae01a 100644 --- a/pax-compiler/templates/cartridge_generation/cartridge.tera +++ b/pax-compiler/templates/cartridge_generation/cartridge.tera @@ -306,6 +306,7 @@ impl DefinitionToInstanceTraverser { compute_properties_fn, children: None, template_node_id: 0, + component_type_id: type_id.to_string(), } } @@ -334,6 +335,7 @@ impl DefinitionToInstanceTraverser { compute_properties_fn: None, children: Some(children), template_node_id: tnd.id, + component_type_id: tnd.type_id.clone(), }) }, "SLOT" => { @@ -356,6 +358,7 @@ impl DefinitionToInstanceTraverser { compute_properties_fn: None, children: Some(children), template_node_id: tnd.id, + component_type_id: tnd.type_id.clone(), }) }, "REPEAT" => { @@ -391,6 +394,7 @@ impl DefinitionToInstanceTraverser { compute_properties_fn: None, children: Some(children), template_node_id: tnd.id, + component_type_id: tnd.type_id.clone(), }) }, _ => { @@ -454,6 +458,7 @@ impl DefinitionToInstanceTraverser { args.children = Some(self.build_children(containing_component_type_id, node)); args.template_node_id = node.id; + args.component_type_id = node.type_id.clone(); node_component_factory.build_component(args) } diff --git a/pax-runtime/src/rendering.rs b/pax-runtime/src/rendering.rs index 8c28a87d5..c15bfefaf 100644 --- a/pax-runtime/src/rendering.rs +++ b/pax-runtime/src/rendering.rs @@ -30,6 +30,7 @@ pub struct InstantiationArgs { pub compute_properties_fn: Option>, pub template_node_id: usize, + pub component_type_id: String, } #[derive(Copy, Clone)] @@ -290,6 +291,7 @@ pub struct BaseInstance { pub instance_prototypical_common_properties_factory: Box Rc>>, pub template_node_id: usize, + pub component_type_id: String, instance_children: InstanceNodePtrList, flags: InstanceFlags, } @@ -322,6 +324,7 @@ impl BaseInstance { instance_children: args.children.unwrap_or_default(), flags, template_node_id: args.template_node_id, + component_type_id: args.component_type_id, } }