layout
Places every measured node that participates in the current pass.
An empty tree performs no work. A non-empty tree must have a completed measure pass with no pending measure work. If that precondition fails, the tree is poisoned. A clean node may skip its layout callback while retained placements are reused. Layout invalidation reruns local placement and marks local paint and semantics work dirty. Ancestor traversal reaches an invalidated node only while that node is currently placed. Descendants are not dirtied by layout invalidation. Unmeasured or unplaced children are excluded from subsequent layout, paint, input, and semantics work.
Throws
when the root has not been measured or measurement remains pending. It is also thrown when the operation is called from another execution owner, re-enters an active operation, or the tree is not active.
when a layout callback or scope operation throws after pipeline work begins and the exception escapes the callback. The original throwable is propagated unchanged after cleanup attempts.