Geometry, Immutability, and Caching in LayoutNG Fragments episode artwork

EPISODE · Dec 4, 2025 · 1H 5M

Geometry, Immutability, and Caching in LayoutNG Fragments

from Blink286 · host Free Debreuil

The provided text describes Blink’s LayoutNG Fragment Tree, an immutable structure that captures the final geometry and layout results, replacing the mutable legacy layout tree. This structure is composed of specialized C++ classes, including NGPhysicalFragment and subclasses like NGPhysicalBoxFragment and NGPhysicalLineBoxFragment, which explicitly represent laid-out components and CSS fragmentation. The design enforces immutability and avoids parent pointers, which are essential constraints that allow successful fragment caching and partial reuse during incremental layout updates. For inline formatting contexts, LayoutNG utilizes a separate, flat list of NGFragmentItem objects and the NGInlineCursor to efficiently build and iterate over line fragments. Downstream processes, such as painting and hit testing, rely on NGPaintFragment wrappers that mirror the physical structure while supplying necessary parent pointers and global coordinate information for traversal. This architectural shift provides a clear, reusable, and predictable foundation that simplifies complex rendering tasks, especially those involving multi-column or paginated content.

Episode metadata supplied by the publisher feed · Published Dec 4, 2025

Embed this episode

NOW PLAYING

Geometry, Immutability, and Caching in LayoutNG Fragments

0:00 1:05:33

No transcript for this episode yet

We transcribe on demand. Request one and we'll notify you when it's ready — usually under 10 minutes.

No similar episodes found.

No similar podcasts found.

Frequently Asked Questions

How long is this episode of Blink286?

This episode is 1 hour and 5 minutes long.

When was this Blink286 episode published?

This episode was published on December 4, 2025.

Can I download this Blink286 episode?

Yes. Use the download control on the episode player to save the publisher-provided media file.
URL copied to clipboard!