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.