Skip to main content

Module solver3

Module solver3 

Source
Expand description

solver3/mod.rs

Next-generation CSS layout engine with proper formatting context separation

Re-exports§

pub use crate::font_traits::TextLayoutCache;

Modules§

cache
Handling Viewport Resizing and Layout Thrashing
calc
CSS calc() expression evaluator.
counters
CSS Counter Support
display_list
Generates a renderer-agnostic display list from a laid-out tree
fc
solver3/fc.rs - Formatting Context Layout
geometry
TODO: Move these to CSS module
getters
Getter functions for CSS properties from the styled DOM
layout_tree
solver3/layout_tree.rs
paged_layout
CSS Paged Media layout integration with integrated fragmentation
pagination
CSS Paged Media Pagination Engine - “Infinite Canvas with Physical Spacers”
positioning
solver3/positioning.rs Pass 3: Final positioning of layout nodes
scrollbar
sizing
solver3/sizing.rs
taffy_bridge

Structs§

LayoutContext
Central context for a single layout pass.

Enums§

LayoutError

Constants§

POSITION_UNSET
Sentinel value for “position not yet computed”. No real position is ever f32::MIN.

Functions§

layout_document
Main entry point for the incremental, cached layout engine
new_position_vec
Create a new PositionVec pre-sized for the given number of nodes.
pos_contains
Check if position has been set for node index.
pos_get
Get position for node index, returning None if unset.
pos_set
Set position for node index. Grows the vec if needed.

Type Aliases§

NodeHashMap
A map of hashes for each node to detect changes in content like text.
PositionVec
Vec-based position storage indexed by layout-tree node index. Replaces BTreeMap<usize, LogicalPosition> for O(1) access and cache-friendly iteration.
Result