Module taffy::compute

source ·
Expand description

Low-level access to the layout algorithms themselves. For a higher-level API, see the TaffyTree struct.

§Layout functions

The layout functions all take an &mut impl LayoutPartialTree parameter, which represents a single container node and it’s direct children.

FunctionPurpose
[compute_flexbox_layout]Layout a Flexbox container and it’s direct children
compute_grid_layoutLayout a CSS Grid container and it’s direct children
[compute_block_layout]Layout a Block container and it’s direct children
compute_leaf_layoutApplies common properties like padding/border/aspect-ratio to a node before deferring to a passed closure to determine it’s size. Can be applied to nodes like text or image nodes.
compute_root_layoutLayout the root node of a tree (regardless of it’s layout mode). This function is typically called once to begin a layout run.
compute_hidden_layoutMark a node as hidden during layout (like Display::None)
compute_cached_layoutAttempts to find a cached layout for the specified node and layout inputs. Uses the provided closure to compute the layout (and then stores the result in the cache) if no cached layout is found.

§Other functions

FunctionRequiresPurpose
round_layoutRoundTreeRound a tree of float-valued layouts to integer pixels
print_treePrintTreePrint a debug representation of a node tree and it’s computed layout

Modules§

  • common 🔒
    Generic code that is shared between multiple layout algorithms
  • grid 🔒
    This module is a partial implementation of the CSS Grid Level 1 specification https://www.w3.org/TR/css-grid-1
  • leaf 🔒
    Computes size using styles and measure functions

Functions§