Expand description
Modifier node scaffolding for Cranpose.
This module defines the foundational pieces of the future
Modifier.Node system described in the project roadmap. It introduces
traits for modifier nodes and their contexts as well as a light-weight
chain container that can reconcile nodes across updates. The
implementation focuses on the core runtime plumbing so UI crates can
begin migrating without expanding the public API surface.
Structs§
- Basic
Modifier Node Context - Lightweight
ModifierNodeContextimplementation that records invalidation requests and update signals. - Constraints
- Constraints used during layout measurement.
- Modifier
Chain Iter - Iterator walking a modifier chain either from head-to-tail or tail-to-head.
- Modifier
Chain Node Ref - Modifier
Invalidation - Records an invalidation request together with the capability mask that triggered it.
- Modifier
Node Chain - Chain of modifier nodes attached to a layout node.
- Node
Capabilities - Capability flags indicating which specialized traits a modifier node implements.
- Node
State - Runtime state tracked for every
ModifierNode. - Semantics
Configuration - Semantics configuration for accessibility.
- Size
Enums§
- Focus
State - Focus state of a focus target node.
- Invalidation
Kind - Identifies which part of the rendering pipeline should be invalidated after a modifier node changes state.
Traits§
- AnyModifier
Element - Type-erased modifier element used by the runtime to reconcile chains.
- Delegatable
Node - Provides traversal helpers that mirror Jetpack Compose’s
DelegatableNodecontract. - Draw
Modifier Node - Marker trait for draw-specific modifier nodes.
- Draw
Scope - Focus
Node - Marker trait for focus modifier nodes.
- Layout
Modifier Node - Marker trait for layout-specific modifier nodes.
- Measurable
- Object capable of measuring a layout child and exposing intrinsic sizes.
- Modifier
Element - Transitional alias so existing call sites that refer to
ModifierElementkeep compiling while the ecosystem migrates toModifierNodeElement. - Modifier
Node - Core trait implemented by modifier nodes.
- Modifier
Node Context - Runtime services exposed to modifier nodes while attached to a tree.
- Modifier
Node Element - Strongly typed modifier elements that can create and update nodes while exposing equality/hash/inspector contracts that mirror Jetpack Compose.
- Pointer
Input Node - Marker trait for pointer input modifier nodes.
- Semantics
Node - Marker trait for semantics modifier nodes.
Functions§
- modifier_
element - Convenience helper for callers to construct a type-erased modifier element without having to mention the internal wrapper type.
Type Aliases§
- DynModifier
Element - Boxed type-erased modifier element.