1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
//! Block / inline-block formatting context implementation.
//!
//! Every layout function in this module implements [`LayoutFn`](crate::layout::LayoutFn)
//! for an element type that participates in the default block flow. Layouts
//! here treat the containing block as a vertical sequence of rows; every
//! block reserves `height` rows starting at the current cursor and advances
//! the cursor past the box's border-box plus `margin.bottom`.
//!
//! Flex, table, and replaced boxes are selected by the geometry dispatcher
//! before normal-flow handlers in this module are consulted.
//!
//! ## Module layout
//!
//! ```text
//! flow/
//! ├── mod.rs ← re-exports (this file)
//! ├── tree.rs ← layout_tree() orchestrator
//! ├── layout_block/ ← shared layout_block() + OuterGeometry + LayoutBlockOptions
//! │ ├── mod.rs ← re-exports
//! │ ├── geometry.rs ← outer-geometry helpers
//! │ ├── options.rs ← LayoutBlockOptions
//! │ └── core.rs ← layout_block() main pipeline
//! ├── aside.rs / body.rs / div.rs / generic.rs / head.rs
//! ├── header_footer.rs / html.rs / list.rs / p.rs
//! ├── img.rs
//! └── table/ ← table-element layout (see `table/mod.rs`)
//! ├── mod.rs ← re-exports + table constants
//! ├── table.rs ← layout_table orchestrator
//! ├── row_group.rs ← layout_row_group pass-through
//! ├── tr.rs ← layout_tr pass-through
//! ├── td.rs ← layout_td + layout_th pass-through
//! ├── cell.rs ← CellInfo + layout_cell
//! └── measure.rs ← collect_rows + collect_cells + cell_text_width +
//! compute_column_widths
//! ```
//!
//! `collect_runs` lives at `crate::layout::layoutbox::collect_runs` because it
//! is shared with the flex layout (see the flex submodule).
pub use crateFontContext;
pub use layout_a;
pub use layout_standard_block;
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;
pub use dispatch_flow_geometry;
pub use ;