cartridge
Structs
ComponentPropertyDescriptor
Runtime descriptor for applying all resolved layers of a generated component property.
Properties
name
Type: &'static str
Property name as it appears in Pax templates and settings.
apply_entries
Type: fn()
Generated applicator for all resolved layers of this property.
Implementations
new
pub const fn new(name: &'static str, apply_entries: fn()) -> Self
Creates a descriptor for a generated component property.
TemplatePropertyPlan
Immutable template inputs shared by common and component property binding. Resolved columns and reactive properties are always node-local; this plan never caches evaluated values or selector matches across nodes or rebinds.
Functions
apply_component_property
pub fn apply_component_property<T>(property: &mut Property<T>, name: &str, value_definition: &ValueDefinition, stack: &Rc<RuntimePropertiesStackFrame>, timeline_stack: Rc<RuntimePropertiesStackFrame>, build_block: fn()) where T: CoercionRules + PropertyValue + ToPaxValue
Replaces a typed component property with the value produced from a single value definition.
build_component_property
pub fn build_component_property<T>(name: &str, value_definition: &ValueDefinition, stack: &Rc<RuntimePropertiesStackFrame>, timeline_stack: Rc<RuntimePropertiesStackFrame>, build_block: fn()) -> Property<T> where T: CoercionRules + PropertyValue + ToPaxValue
Builds a typed component property from a single value definition. Callers
that apply layered settings should bind $base before calling this helper.
create_new_common_properties
pub fn create_new_common_properties(defined_properties: &BTreeMap<String, ValueDefinition>, stack_frame: &Rc<RuntimePropertiesStackFrame>) -> Rc<RefCell<CommonProperties>>
Creates common properties from a flattened property map.
create_new_common_properties_from_columns
pub fn create_new_common_properties_from_columns(property_columns: &RuntimeResolvedPropertyColumns, stack_frame: &Rc<RuntimePropertiesStackFrame>) -> Rc<RefCell<CommonProperties>>
Creates common properties from resolved columns, preserving layer order so
$base can reference each prior layer.
property_columns_from_defined_properties
pub fn property_columns_from_defined_properties(defined_properties: &BTreeMap<String, ValueDefinition>) -> RuntimeResolvedPropertyColumns
Converts a flattened property map into one-entry columns for legacy callers that do not participate in selector/import precedence layering.
stack_with_base
pub fn stack_with_base<T>(stack: &Rc<RuntimePropertiesStackFrame>, base_property: Property<T>) -> Rc<RuntimePropertiesStackFrame> where T: PropertyValue + ToPaxValue
Returns a stack frame with $base bound to the supplied previous-layer
property value.
stack_with_optional_base
pub fn stack_with_optional_base<T>(stack: &Rc<RuntimePropertiesStackFrame>, base_property: Property<Option<T>>) -> Rc<RuntimePropertiesStackFrame> where T: PropertyValue + ToPaxValue
Returns a stack frame with $base bound to an optional previous common
property value, exposing T::default() when the previous layer is None.
update_existing_common_properties
pub fn update_existing_common_properties(expanded_node: &Rc<ExpandedNode>, defined_properties: &BTreeMap<String, ValueDefinition>, stack_frame: &Rc<RuntimePropertiesStackFrame>)
Applies a flattened common-property map to an existing expanded node.
update_existing_common_properties_from_columns
pub fn update_existing_common_properties_from_columns(expanded_node: &Rc<ExpandedNode>, property_columns: &RuntimeResolvedPropertyColumns, stack_frame: &Rc<RuntimePropertiesStackFrame>)
Applies resolved common-property columns to an existing expanded node,
preserving layer order so $base can reference each prior layer.
Constants
BASE_SYMBOL
PAXEL symbol bound while resolving a property layer to the value from the preceding layer in that same property's precedence stack.