gioser

tawasuyu/taffy

A high performance rust-powered UI layout library

HTML 227Rust 7TOML 3CSS 1307 Definitions

⎇ ba4cd3c3b1b36f72434469312416814f82bea5ff benches/generated/align_baseline_child_multiline.rs Rust · 89 lines · 3.0 KB History Who touched what raw

Layout algorithm decoupling, Sizing Constraints & Perf Improvements (#246) ba4cd3c3b · Nico Burns ·

1pub fn compute() {
2    let mut taffy = taffy::Taffy::new();
3    let node0 = taffy
4        .new_with_children(
5            taffy::style::FlexboxLayout {
6                size: taffy::geometry::Size {
7                    width: taffy::style::Dimension::Points(50f32),
8                    height: taffy::style::Dimension::Points(60f32),
9                    ..Default::default()
10                },
11                ..Default::default()
12            },
13            &[],
14        )
15        .unwrap();
16    let node10 = taffy
17        .new_with_children(
18            taffy::style::FlexboxLayout {
19                size: taffy::geometry::Size {
20                    width: taffy::style::Dimension::Points(25f32),
21                    height: taffy::style::Dimension::Points(20f32),
22                    ..Default::default()
23                },
24                ..Default::default()
25            },
26            &[],
27        )
28        .unwrap();
29    let node11 = taffy
30        .new_with_children(
31            taffy::style::FlexboxLayout {
32                size: taffy::geometry::Size {
33                    width: taffy::style::Dimension::Points(25f32),
34                    height: taffy::style::Dimension::Points(10f32),
35                    ..Default::default()
36                },
37                ..Default::default()
38            },
39            &[],
40        )
41        .unwrap();
42    let node12 = taffy
43        .new_with_children(
44            taffy::style::FlexboxLayout {
45                size: taffy::geometry::Size {
46                    width: taffy::style::Dimension::Points(25f32),
47                    height: taffy::style::Dimension::Points(20f32),
48                    ..Default::default()
49                },
50                ..Default::default()
51            },
52            &[],
53        )
54        .unwrap();
55    let node13 = taffy
56        .new_with_children(
57            taffy::style::FlexboxLayout {
58                size: taffy::geometry::Size {
59                    width: taffy::style::Dimension::Points(25f32),
60                    height: taffy::style::Dimension::Points(10f32),
61                    ..Default::default()
62                },
63                ..Default::default()
64            },
65            &[],
66        )
67        .unwrap();
68    let node1 = taffy
69        .new_with_children(
70            taffy::style::FlexboxLayout {
71                flex_wrap: taffy::style::FlexWrap::Wrap,
72                size: taffy::geometry::Size { width: taffy::style::Dimension::Points(50f32), ..Default::default() },
73                ..Default::default()
74            },
75            &[node10, node11, node12, node13],
76        )
77        .unwrap();
78    let node = taffy
79        .new_with_children(
80            taffy::style::FlexboxLayout {
81                align_items: taffy::style::AlignItems::Baseline,
82                size: taffy::geometry::Size { width: taffy::style::Dimension::Points(100f32), ..Default::default() },
83                ..Default::default()
84            },
85            &[node0, node1],
86        )
87        .unwrap();
88    taffy.compute_layout(node, taffy::geometry::Size::MAX_CONTENT).unwrap();
89}