gioser

tawasuyu/taffy

A high performance rust-powered UI layout library

Rust 1311HTML 640Markdown 11TOML 63653 Definitions

⎇ df4873ec33473556892439341dbc5f9a88ed8808 tests/generated/mod.rs Rust · 939 lines · 34.0 KB History Who touched what raw

Flexbox: pass correct cross-axis available space when computing an item's intrinsic main size (+misc fixes) (#522) df4873ec3 · Nico Burns ·

1#[allow(dead_code)]
2#[derive(Debug, Clone, Copy, PartialEq, Eq)]
3enum WritingMode {
4    Horizontal,
5    Vertical,
6}
7#[allow(dead_code)]
8fn measure_standard_text(
9    known_dimensions: taffy::geometry::Size<Option<f32>>,
10    available_space: taffy::geometry::Size<taffy::style::AvailableSpace>,
11    text_content: &str,
12    writing_mode: WritingMode,
13    _aspect_ratio: Option<f32>,
14) -> taffy::geometry::Size<f32> {
15    use taffy::axis::AbsoluteAxis;
16    use taffy::prelude::*;
17    const ZWS: char = '\u{200B}';
18    const H_WIDTH: f32 = 10.0;
19    const H_HEIGHT: f32 = 10.0;
20    if let Size { width: Some(width), height: Some(height) } = known_dimensions {
21        return Size { width, height };
22    }
23    let inline_axis = match writing_mode {
24        WritingMode::Horizontal => AbsoluteAxis::Horizontal,
25        WritingMode::Vertical => AbsoluteAxis::Vertical,
26    };
27    let block_axis = inline_axis.other_axis();
28    let lines: Vec<&str> = text_content.split(ZWS).collect();
29    if lines.is_empty() {
30        return Size::ZERO;
31    }
32    let min_line_length: usize = lines.iter().map(|line| line.len()).max().unwrap_or(0);
33    let max_line_length: usize = lines.iter().map(|line| line.len()).sum();
34    let inline_size =
35        known_dimensions.get_abs(inline_axis).unwrap_or_else(|| match available_space.get_abs(inline_axis) {
36            AvailableSpace::MinContent => min_line_length as f32 * H_WIDTH,
37            AvailableSpace::MaxContent => max_line_length as f32 * H_WIDTH,
38            AvailableSpace::Definite(inline_size) => {
39                inline_size.min(max_line_length as f32 * H_WIDTH).max(min_line_length as f32 * H_WIDTH)
40            }
41        });
42    let block_size = known_dimensions.get_abs(block_axis).unwrap_or_else(|| {
43        let inline_line_length = (inline_size / H_WIDTH).floor() as usize;
44        let mut line_count = 1;
45        let mut current_line_length = 0;
46        for line in &lines {
47            if current_line_length + line.len() > inline_line_length {
48                if current_line_length > 0 {
49                    line_count += 1
50                };
51                current_line_length = line.len();
52            } else {
53                current_line_length += line.len();
54            };
55        }
56        (line_count as f32) * H_HEIGHT
57    });
58    match writing_mode {
59        WritingMode::Horizontal => Size { width: inline_size, height: block_size },
60        WritingMode::Vertical => Size { width: block_size, height: inline_size },
61    }
62}
63mod absolute_aspect_ratio_aspect_ratio_overrides_height_of_full_inset;
64mod absolute_aspect_ratio_fill_height;
65mod absolute_aspect_ratio_fill_height_from_inset;
66mod absolute_aspect_ratio_fill_max_height;
67mod absolute_aspect_ratio_fill_max_width;
68mod absolute_aspect_ratio_fill_min_height;
69mod absolute_aspect_ratio_fill_min_width;
70mod absolute_aspect_ratio_fill_width;
71mod absolute_aspect_ratio_fill_width_from_inset;
72mod absolute_aspect_ratio_height_overrides_inset;
73mod absolute_aspect_ratio_width_overrides_inset;
74mod absolute_child_with_cross_margin;
75mod absolute_child_with_main_margin;
76mod absolute_child_with_max_height;
77mod absolute_child_with_max_height_larger_shrinkable_grandchild;
78mod absolute_layout_align_items_and_justify_content_center;
79mod absolute_layout_align_items_and_justify_content_center_and_bottom_position;
80mod absolute_layout_align_items_and_justify_content_center_and_left_position;
81mod absolute_layout_align_items_and_justify_content_center_and_right_position;
82mod absolute_layout_align_items_and_justify_content_center_and_top_position;
83mod absolute_layout_align_items_and_justify_content_flex_end;
84mod absolute_layout_align_items_center;
85mod absolute_layout_align_items_center_on_child_only;
86mod absolute_layout_child_order;
87mod absolute_layout_in_wrap_reverse_column_container;
88mod absolute_layout_in_wrap_reverse_column_container_flex_end;
89mod absolute_layout_in_wrap_reverse_row_container;
90mod absolute_layout_in_wrap_reverse_row_container_flex_end;
91mod absolute_layout_justify_content_center;
92mod absolute_layout_no_size;
93mod absolute_layout_percentage_bottom_based_on_parent_height;
94mod absolute_layout_percentage_height;
95mod absolute_layout_row_width_height_end_bottom;
96mod absolute_layout_start_top_end_bottom;
97mod absolute_layout_width_height_end_bottom;
98mod absolute_layout_width_height_start_top;
99mod absolute_layout_width_height_start_top_end_bottom;
100mod absolute_layout_within_border;
101mod absolute_margin_bottom_left;
102mod absolute_minmax_bottom_right_max;
103mod absolute_minmax_bottom_right_min_max;
104mod absolute_minmax_bottom_right_min_max_preferred;
105mod absolute_minmax_top_left_bottom_right_max;
106mod absolute_minmax_top_left_bottom_right_min_max;
107mod absolute_padding_border_overrides_max_size;
108mod absolute_padding_border_overrides_size;
109mod align_baseline;
110mod align_baseline_child;
111mod align_baseline_child_margin;
112mod align_baseline_child_margin_percent;
113mod align_baseline_child_multiline;
114mod align_baseline_child_multiline_no_override_on_secondline;
115mod align_baseline_child_multiline_override;
116mod align_baseline_child_padding;
117mod align_baseline_child_top;
118mod align_baseline_child_top2;
119mod align_baseline_column;
120mod align_baseline_double_nested_child;
121mod align_baseline_multiline;
122mod align_baseline_multiline_column;
123mod align_baseline_multiline_column2;
124mod align_baseline_multiline_row_and_column;
125mod align_baseline_nested_child;
126mod align_baseline_nested_column;
127mod align_center_should_size_based_on_content;
128mod align_content_flex_end;
129mod align_content_flex_start;
130mod align_content_flex_start_with_flex;
131mod align_content_flex_start_without_height_on_children;
132mod align_content_not_stretch_with_align_items_stretch;
133mod align_content_space_around_single_line;
134mod align_content_space_around_wrapped;
135mod align_content_space_between_single_line;
136mod align_content_space_between_wrapped;
137mod align_content_space_evenly_single_line;
138mod align_content_space_evenly_wrapped;
139mod align_content_spacearound;
140mod align_content_spacebetween;
141mod align_content_stretch;
142mod align_content_stretch_column;
143mod align_content_stretch_is_not_overriding_align_items;
144mod align_content_stretch_row;
145mod align_content_stretch_row_with_children;
146mod align_content_stretch_row_with_fixed_height;
147mod align_content_stretch_row_with_flex;
148mod align_content_stretch_row_with_flex_no_shrink;
149mod align_content_stretch_row_with_margin;
150mod align_content_stretch_row_with_max_height;
151mod align_content_stretch_row_with_min_height;
152mod align_content_stretch_row_with_padding;
153mod align_content_stretch_row_with_single_row;
154mod align_flex_start_with_shrinking_children;
155mod align_flex_start_with_shrinking_children_with_stretch;
156mod align_flex_start_with_stretching_children;
157mod align_items_center;
158mod align_items_center_child_with_margin_bigger_than_parent;
159mod align_items_center_child_without_margin_bigger_than_parent;
160mod align_items_center_justify_content_center;
161mod align_items_center_min_max_with_padding;
162mod align_items_center_with_child_margin;
163mod align_items_center_with_child_top;
164mod align_items_flex_end;
165mod align_items_flex_end_child_with_margin_bigger_than_parent;
166mod align_items_flex_end_child_without_margin_bigger_than_parent;
167mod align_items_flex_start;
168mod align_items_min_max;
169mod align_items_stretch;
170mod align_items_stretch_min_cross;
171mod align_self_baseline;
172mod align_self_center;
173mod align_self_center_undefined_max_height;
174mod align_self_flex_end;
175mod align_self_flex_end_override_flex_start;
176mod align_self_flex_start;
177mod align_stretch_should_size_based_on_parent;
178mod android_news_feed;
179mod aspect_ratio_flex_column_fill_height;
180mod aspect_ratio_flex_column_fill_max_height;
181mod aspect_ratio_flex_column_fill_max_width;
182mod aspect_ratio_flex_column_fill_min_height;
183mod aspect_ratio_flex_column_fill_min_width;
184mod aspect_ratio_flex_column_fill_width;
185mod aspect_ratio_flex_column_fill_width_flex;
186mod aspect_ratio_flex_column_stretch_fill_height;
187mod aspect_ratio_flex_column_stretch_fill_max_height;
188mod aspect_ratio_flex_column_stretch_fill_max_width;
189mod aspect_ratio_flex_column_stretch_fill_width;
190mod aspect_ratio_flex_row_fill_height;
191mod aspect_ratio_flex_row_fill_max_height;
192mod aspect_ratio_flex_row_fill_max_width;
193mod aspect_ratio_flex_row_fill_min_height;
194mod aspect_ratio_flex_row_fill_min_width;
195mod aspect_ratio_flex_row_fill_width;
196mod aspect_ratio_flex_row_fill_width_flex;
197mod aspect_ratio_flex_row_stretch_fill_height;
198mod aspect_ratio_flex_row_stretch_fill_max_height;
199mod aspect_ratio_flex_row_stretch_fill_max_width;
200mod aspect_ratio_flex_row_stretch_fill_width;
201mod bevy_issue_7976_3_level;
202mod bevy_issue_7976_4_level;
203mod bevy_issue_7976_reduced;
204mod bevy_issue_8017;
205mod bevy_issue_8017_reduced;
206mod bevy_issue_8082;
207mod bevy_issue_8082_percent;
208mod bevy_issue_9530;
209mod bevy_issue_9530_reduced;
210mod bevy_issue_9530_reduced2;
211mod bevy_issue_9530_reduced3;
212mod bevy_issue_9530_reduced4;
213mod border_center_child;
214mod border_container_match_child;
215mod border_flex_child;
216mod border_no_child;
217mod border_no_size;
218mod border_stretch_child;
219mod child_min_max_width_flexing;
220mod child_with_padding_align_end;
221mod container_with_unsized_child;
222mod display_none;
223mod display_none_absolute_child;
224mod display_none_fixed_size;
225mod display_none_only_node;
226mod display_none_with_child;
227mod display_none_with_margin;
228mod display_none_with_position;
229mod display_none_with_position_absolute;
230mod flex_basis_and_main_dimen_set_when_flexing;
231mod flex_basis_flex_grow_column;
232mod flex_basis_flex_grow_row;
233mod flex_basis_flex_shrink_column;
234mod flex_basis_flex_shrink_row;
235mod flex_basis_larger_than_content_column;
236mod flex_basis_larger_than_content_row;
237mod flex_basis_overrides_main_size;
238mod flex_basis_slightly_smaller_then_content_with_flex_grow_large_size;
239mod flex_basis_smaller_than_content_column;
240mod flex_basis_smaller_than_content_row;
241mod flex_basis_smaller_than_main_dimen_column;
242mod flex_basis_smaller_than_main_dimen_row;
243mod flex_basis_smaller_then_content_with_flex_grow_large_size;
244mod flex_basis_smaller_then_content_with_flex_grow_small_size;
245mod flex_basis_smaller_then_content_with_flex_grow_unconstraint_size;
246mod flex_basis_smaller_then_content_with_flex_grow_very_large_size;
247mod flex_basis_unconstraint_column;
248mod flex_basis_unconstraint_row;
249mod flex_basis_zero_undefined_main_size;
250mod flex_column_relative_all_sides;
251mod flex_direction_column;
252mod flex_direction_column_no_height;
253mod flex_direction_column_reverse;
254mod flex_direction_column_reverse_no_height;
255mod flex_direction_row;
256mod flex_direction_row_no_width;
257mod flex_direction_row_reverse;
258mod flex_grow_child;
259mod flex_grow_flex_basis_percent_min_max;
260mod flex_grow_height_maximized;
261mod flex_grow_in_at_most_container;
262mod flex_grow_less_than_factor_one;
263mod flex_grow_root_minimized;
264mod flex_grow_shrink_at_most;
265mod flex_grow_to_min;
266mod flex_grow_within_constrained_max_column;
267mod flex_grow_within_constrained_max_row;
268mod flex_grow_within_constrained_max_width;
269mod flex_grow_within_constrained_min_column;
270mod flex_grow_within_constrained_min_max_column;
271mod flex_grow_within_constrained_min_row;
272mod flex_grow_within_max_width;
273mod flex_root_ignored;
274mod flex_row_relative_all_sides;
275mod flex_shrink_by_outer_margin_with_max_size;
276mod flex_shrink_flex_grow_child_flex_shrink_other_child;
277mod flex_shrink_flex_grow_row;
278mod flex_shrink_to_zero;
279mod flex_wrap_align_stretch_fits_one_row;
280mod flex_wrap_children_with_min_main_overriding_flex_basis;
281mod flex_wrap_wrap_to_child_height;
282mod gap_column_gap_child_margins;
283mod gap_column_gap_determines_parent_width;
284mod gap_column_gap_flexible;
285mod gap_column_gap_flexible_undefined_parent;
286mod gap_column_gap_inflexible;
287mod gap_column_gap_inflexible_undefined_parent;
288mod gap_column_gap_justify_center;
289mod gap_column_gap_justify_flex_end;
290mod gap_column_gap_justify_flex_start;
291mod gap_column_gap_justify_space_around;
292mod gap_column_gap_justify_space_between;
293mod gap_column_gap_justify_space_evenly;
294mod gap_column_gap_mixed_flexible;
295mod gap_column_gap_percentage_cyclic_partially_shrinkable;
296mod gap_column_gap_percentage_cyclic_shrinkable;
297mod gap_column_gap_percentage_cyclic_unshrinkable;
298mod gap_column_gap_percentage_flexible;
299mod gap_column_gap_percentage_flexible_with_padding;
300mod gap_column_gap_percentage_inflexible;
301mod gap_column_gap_row_gap_wrapping;
302mod gap_column_gap_wrap_align_center;
303mod gap_column_gap_wrap_align_flex_end;
304mod gap_column_gap_wrap_align_flex_start;
305mod gap_column_gap_wrap_align_space_around;
306mod gap_column_gap_wrap_align_space_between;
307mod gap_column_gap_wrap_align_stretch;
308mod gap_column_row_gap_wrapping;
309mod gap_percentage_row_gap_wrapping;
310mod gap_row_gap_align_items_end;
311mod gap_row_gap_align_items_stretch;
312mod gap_row_gap_column_child_margins;
313mod gap_row_gap_determines_parent_height;
314mod gap_row_gap_row_wrap_child_margins;
315#[cfg(feature = "grid")]
316mod grid_absolute_align_self_sized_all;
317#[cfg(feature = "grid")]
318mod grid_absolute_column_end;
319#[cfg(feature = "grid")]
320mod grid_absolute_column_start;
321#[cfg(feature = "grid")]
322mod grid_absolute_container_bottom_left;
323#[cfg(feature = "grid")]
324mod grid_absolute_container_bottom_left_margin;
325#[cfg(feature = "grid")]
326mod grid_absolute_container_left_overrides_right;
327#[cfg(feature = "grid")]
328mod grid_absolute_container_left_right;
329#[cfg(feature = "grid")]
330mod grid_absolute_container_left_right_margin;
331#[cfg(feature = "grid")]
332mod grid_absolute_container_negative_position;
333#[cfg(feature = "grid")]
334mod grid_absolute_container_negative_position_margin;
335#[cfg(feature = "grid")]
336mod grid_absolute_container_top_bottom;
337#[cfg(feature = "grid")]
338mod grid_absolute_container_top_bottom_margin;
339#[cfg(feature = "grid")]
340mod grid_absolute_container_top_right;
341#[cfg(feature = "grid")]
342mod grid_absolute_container_top_right_margin;
343#[cfg(feature = "grid")]
344mod grid_absolute_justify_self_sized_all;
345#[cfg(feature = "grid")]
346mod grid_absolute_layout_within_border;
347#[cfg(feature = "grid")]
348mod grid_absolute_layout_within_border_static;
349#[cfg(feature = "grid")]
350mod grid_absolute_row_end;
351#[cfg(feature = "grid")]
352mod grid_absolute_row_start;
353#[cfg(feature = "grid")]
354mod grid_absolute_top_overrides_bottom;
355#[cfg(feature = "grid")]
356mod grid_absolute_with_padding;
357#[cfg(feature = "grid")]
358mod grid_absolute_with_padding_and_margin;
359#[cfg(feature = "grid")]
360mod grid_align_content_center;
361#[cfg(feature = "grid")]
362mod grid_align_content_end;
363#[cfg(feature = "grid")]
364mod grid_align_content_end_with_padding_border;
365#[cfg(feature = "grid")]
366mod grid_align_content_space_around;
367#[cfg(feature = "grid")]
368mod grid_align_content_space_around_with_padding_border;
369#[cfg(feature = "grid")]
370mod grid_align_content_space_between;
371#[cfg(feature = "grid")]
372mod grid_align_content_space_between_with_padding_border;
373#[cfg(feature = "grid")]
374mod grid_align_content_space_evenly;
375#[cfg(feature = "grid")]
376mod grid_align_content_space_evenly_with_padding_border;
377#[cfg(feature = "grid")]
378mod grid_align_content_start;
379#[cfg(feature = "grid")]
380mod grid_align_content_start_with_padding_border;
381#[cfg(feature = "grid")]
382mod grid_align_items_baseline;
383#[cfg(feature = "grid")]
384mod grid_align_items_baseline_child;
385#[cfg(feature = "grid")]
386mod grid_align_items_baseline_child_margin;
387#[cfg(feature = "grid")]
388mod grid_align_items_baseline_child_margin_percent;
389#[cfg(feature = "grid")]
390mod grid_align_items_baseline_child_multiline;
391#[cfg(feature = "grid")]
392mod grid_align_items_baseline_child_multiline_no_override_on_secondline;
393#[cfg(feature = "grid")]
394mod grid_align_items_baseline_child_multiline_override;
395#[cfg(feature = "grid")]
396mod grid_align_items_baseline_child_padding;
397#[cfg(feature = "grid")]
398mod grid_align_items_baseline_child_top;
399#[cfg(feature = "grid")]
400mod grid_align_items_baseline_child_top2;
401#[cfg(feature = "grid")]
402mod grid_align_items_baseline_complex;
403#[cfg(feature = "grid")]
404mod grid_align_items_baseline_double_nested_child;
405#[cfg(feature = "grid")]
406mod grid_align_items_baseline_multiline;
407#[cfg(feature = "grid")]
408mod grid_align_items_baseline_multiline_column;
409#[cfg(feature = "grid")]
410mod grid_align_items_baseline_multiline_row_and_column;
411#[cfg(feature = "grid")]
412mod grid_align_items_baseline_nested_column;
413#[cfg(feature = "grid")]
414mod grid_align_items_sized_center;
415#[cfg(feature = "grid")]
416mod grid_align_items_sized_end;
417#[cfg(feature = "grid")]
418mod grid_align_items_sized_start;
419#[cfg(feature = "grid")]
420mod grid_align_items_sized_stretch;
421#[cfg(feature = "grid")]
422mod grid_align_self_sized_all;
423#[cfg(feature = "grid")]
424mod grid_aspect_ratio_absolute_aspect_ratio_overrides_height_of_full_inset;
425#[cfg(feature = "grid")]
426mod grid_aspect_ratio_absolute_fill_height_from_inset;
427#[cfg(feature = "grid")]
428mod grid_aspect_ratio_absolute_fill_width_from_inset;
429#[cfg(feature = "grid")]
430mod grid_aspect_ratio_absolute_height_overrides_inset;
431#[cfg(feature = "grid")]
432mod grid_aspect_ratio_absolute_width_overrides_inset;
433#[cfg(feature = "grid")]
434mod grid_aspect_ratio_child_fill_content_height;
435#[cfg(feature = "grid")]
436mod grid_aspect_ratio_child_fill_content_width;
437#[cfg(feature = "grid")]
438mod grid_aspect_ratio_fill_child_height;
439#[cfg(feature = "grid")]
440mod grid_aspect_ratio_fill_child_max_height;
441#[cfg(feature = "grid")]
442mod grid_aspect_ratio_fill_child_max_width;
443#[cfg(feature = "grid")]
444mod grid_aspect_ratio_fill_child_min_height;
445#[cfg(feature = "grid")]
446mod grid_aspect_ratio_fill_child_min_width;
447#[cfg(feature = "grid")]
448mod grid_aspect_ratio_fill_child_width;
449#[cfg(feature = "grid")]
450mod grid_aspect_ratio_overriden_by_explicit_sizes;
451#[cfg(feature = "grid")]
452mod grid_aspect_ratio_overriden_by_explicit_sizes_flex;
453#[cfg(feature = "grid")]
454mod grid_auto_columns_fixed_width;
455#[cfg(feature = "grid")]
456mod grid_auto_fill_fixed_size;
457#[cfg(feature = "grid")]
458mod grid_auto_fill_with_empty_auto_track;
459#[cfg(feature = "grid")]
460mod grid_auto_fit_with_empty_auto_track;
461#[cfg(feature = "grid")]
462mod grid_auto_single_item;
463#[cfg(feature = "grid")]
464mod grid_auto_single_item_fixed_width;
465#[cfg(feature = "grid")]
466mod grid_auto_single_item_fixed_width_with_definite_width;
467#[cfg(feature = "grid")]
468mod grid_auto_takes_precedence_over_fr;
469#[cfg(feature = "grid")]
470mod grid_basic;
471#[cfg(feature = "grid")]
472mod grid_basic_implicit_tracks;
473#[cfg(feature = "grid")]
474mod grid_basic_with_overflow;
475#[cfg(feature = "grid")]
476mod grid_basic_with_padding;
477#[cfg(feature = "grid")]
478mod grid_display_none_fixed_size;
479#[cfg(feature = "grid")]
480mod grid_fit_content_percent_definite_argument;
481#[cfg(feature = "grid")]
482mod grid_fit_content_percent_definite_max_content;
483#[cfg(feature = "grid")]
484mod grid_fit_content_percent_definite_min_content;
485#[cfg(feature = "grid")]
486mod grid_fit_content_percent_indefinite_argument;
487#[cfg(feature = "grid")]
488mod grid_fit_content_percent_indefinite_max_content;
489#[cfg(feature = "grid")]
490mod grid_fit_content_percent_indefinite_min_content;
491#[cfg(feature = "grid")]
492mod grid_fit_content_points_argument;
493#[cfg(feature = "grid")]
494mod grid_fit_content_points_max_content;
495#[cfg(feature = "grid")]
496mod grid_fit_content_points_min_content;
497#[cfg(feature = "grid")]
498mod grid_fr_fixed_size_no_content_proportions;
499#[cfg(feature = "grid")]
500mod grid_fr_fixed_size_no_content_proportions_sub_1_sum;
501#[cfg(feature = "grid")]
502mod grid_fr_fixed_size_single_item;
503#[cfg(feature = "grid")]
504mod grid_fr_no_sized_items_indefinite;
505#[cfg(feature = "grid")]
506mod grid_fr_single_item_indefinite;
507#[cfg(feature = "grid")]
508mod grid_fr_span_2_proportion;
509#[cfg(feature = "grid")]
510mod grid_fr_span_2_proportion_sub_1_sum;
511#[cfg(feature = "grid")]
512mod grid_fr_span_2_proportion_with_non_spanned_track;
513#[cfg(feature = "grid")]
514mod grid_fr_span_2_proportion_zero_sum;
515#[cfg(feature = "grid")]
516mod grid_fr_span_2_proportion_zero_sum_with_non_spanned_track;
517#[cfg(feature = "grid")]
518mod grid_gap;
519#[cfg(feature = "grid")]
520mod grid_hidden;
521#[cfg(feature = "grid")]
522mod grid_justify_content_center;
523#[cfg(feature = "grid")]
524mod grid_justify_content_center_with_padding_border;
525#[cfg(feature = "grid")]
526mod grid_justify_content_end;
527#[cfg(feature = "grid")]
528mod grid_justify_content_end_with_padding_border;
529#[cfg(feature = "grid")]
530mod grid_justify_content_space_around;
531#[cfg(feature = "grid")]
532mod grid_justify_content_space_around_with_padding_border;
533#[cfg(feature = "grid")]
534mod grid_justify_content_space_between;
535#[cfg(feature = "grid")]
536mod grid_justify_content_space_between_with_padding_border;
537#[cfg(feature = "grid")]
538mod grid_justify_content_space_evenly;
539#[cfg(feature = "grid")]
540mod grid_justify_content_space_evenly_with_padding_border;
541#[cfg(feature = "grid")]
542mod grid_justify_content_start;
543#[cfg(feature = "grid")]
544mod grid_justify_content_start_with_padding_border;
545#[cfg(feature = "grid")]
546mod grid_justify_items_sized_center;
547#[cfg(feature = "grid")]
548mod grid_justify_items_sized_end;
549#[cfg(feature = "grid")]
550mod grid_justify_items_sized_start;
551#[cfg(feature = "grid")]
552mod grid_justify_items_sized_stretch;
553#[cfg(feature = "grid")]
554mod grid_justify_self_sized_all;
555#[cfg(feature = "grid")]
556mod grid_margins_auto_margins;
557#[cfg(feature = "grid")]
558mod grid_margins_auto_margins_override_stretch;
559#[cfg(feature = "grid")]
560mod grid_margins_fixed_center;
561#[cfg(feature = "grid")]
562mod grid_margins_fixed_end;
563#[cfg(feature = "grid")]
564mod grid_margins_fixed_start;
565#[cfg(feature = "grid")]
566mod grid_margins_fixed_stretch;
567#[cfg(feature = "grid")]
568mod grid_margins_percent_center;
569#[cfg(feature = "grid")]
570mod grid_margins_percent_end;
571#[cfg(feature = "grid")]
572mod grid_margins_percent_start;
573#[cfg(feature = "grid")]
574mod grid_margins_percent_stretch;
575#[cfg(feature = "grid")]
576mod grid_max_content_maximum_single_item;
577#[cfg(feature = "grid")]
578mod grid_max_content_single_item;
579#[cfg(feature = "grid")]
580mod grid_max_content_single_item_margin_auto;
581#[cfg(feature = "grid")]
582mod grid_max_content_single_item_margin_fixed;
583#[cfg(feature = "grid")]
584mod grid_max_content_single_item_margin_percent;
585#[cfg(feature = "grid")]
586mod grid_max_content_single_item_span_2;
587#[cfg(feature = "grid")]
588mod grid_max_content_single_item_span_2_gap_fixed;
589#[cfg(feature = "grid")]
590mod grid_max_content_single_item_span_2_gap_percent_definite;
591#[cfg(feature = "grid")]
592mod grid_max_content_single_item_span_2_gap_percent_indefinite;
593#[cfg(feature = "grid")]
594mod grid_min_content_flex_column;
595#[cfg(feature = "grid")]
596mod grid_min_content_flex_row;
597#[cfg(feature = "grid")]
598mod grid_min_content_flex_single_item;
599#[cfg(feature = "grid")]
600mod grid_min_content_flex_single_item_margin_auto;
601#[cfg(feature = "grid")]
602mod grid_min_content_flex_single_item_margin_fixed;
603#[cfg(feature = "grid")]
604mod grid_min_content_flex_single_item_margin_percent;
605#[cfg(feature = "grid")]
606mod grid_min_content_maximum_single_item;
607#[cfg(feature = "grid")]
608mod grid_min_content_single_item;
609#[cfg(feature = "grid")]
610mod grid_minmax_auto_fixed_10px;
611#[cfg(feature = "grid")]
612mod grid_minmax_auto_max_content;
613#[cfg(feature = "grid")]
614mod grid_minmax_auto_min_content;
615#[cfg(feature = "grid")]
616mod grid_minmax_auto_percent_definite;
617#[cfg(feature = "grid")]
618mod grid_minmax_auto_percent_indefinite;
619#[cfg(feature = "grid")]
620mod grid_minmax_column_fixed_width_above_range;
621#[cfg(feature = "grid")]
622mod grid_minmax_column_fixed_width_below_range;
623#[cfg(feature = "grid")]
624mod grid_minmax_column_fixed_width_within_range;
625#[cfg(feature = "grid")]
626mod grid_minmax_column_indefinite;
627#[cfg(feature = "grid")]
628mod grid_minmax_column_with_auto_fixed;
629#[cfg(feature = "grid")]
630mod grid_minmax_column_with_fr_fixed;
631#[cfg(feature = "grid")]
632mod grid_minmax_max_content_1fr;
633#[cfg(feature = "grid")]
634mod grid_minmax_max_content_auto;
635#[cfg(feature = "grid")]
636mod grid_minmax_max_content_fixed_10px;
637#[cfg(feature = "grid")]
638mod grid_minmax_max_content_min_content;
639#[cfg(feature = "grid")]
640mod grid_minmax_max_content_percent_definite;
641#[cfg(feature = "grid")]
642mod grid_minmax_max_content_percent_indefinite;
643#[cfg(feature = "grid")]
644mod grid_minmax_min_content_1fr;
645#[cfg(feature = "grid")]
646mod grid_minmax_min_content_auto;
647#[cfg(feature = "grid")]
648mod grid_minmax_min_content_fixed_10px;
649#[cfg(feature = "grid")]
650mod grid_minmax_min_content_max_content;
651#[cfg(feature = "grid")]
652mod grid_minmax_min_content_percent_definite;
653#[cfg(feature = "grid")]
654mod grid_minmax_min_content_percent_indefinite;
655#[cfg(feature = "grid")]
656mod grid_out_of_order_items;
657#[cfg(feature = "grid")]
658mod grid_overflow_rows;
659#[cfg(feature = "grid")]
660mod grid_padding_border_overrides_container_max_size;
661#[cfg(feature = "grid")]
662mod grid_padding_border_overrides_container_size;
663#[cfg(feature = "grid")]
664mod grid_padding_border_overrides_max_size;
665#[cfg(feature = "grid")]
666mod grid_padding_border_overrides_min_size;
667#[cfg(feature = "grid")]
668mod grid_padding_border_overrides_size;
669#[cfg(feature = "grid")]
670mod grid_percent_item_inside_stretch_item;
671#[cfg(feature = "grid")]
672mod grid_percent_items_nested_inside_stretch_alignment;
673#[cfg(feature = "grid")]
674mod grid_percent_items_nested_moderate;
675#[cfg(feature = "grid")]
676mod grid_percent_items_nested_with_margin;
677#[cfg(feature = "grid")]
678mod grid_percent_items_nested_with_padding_margin;
679#[cfg(feature = "grid")]
680mod grid_percent_items_width_and_margin;
681#[cfg(feature = "grid")]
682mod grid_percent_items_width_and_padding;
683#[cfg(feature = "grid")]
684mod grid_percent_tracks_definite_overflow;
685#[cfg(feature = "grid")]
686mod grid_percent_tracks_definite_underflow;
687#[cfg(feature = "grid")]
688mod grid_percent_tracks_indefinite_only;
689#[cfg(feature = "grid")]
690mod grid_percent_tracks_indefinite_with_content_overflow;
691#[cfg(feature = "grid")]
692mod grid_percent_tracks_indefinite_with_content_underflow;
693#[cfg(feature = "grid")]
694mod grid_placement_auto_negative;
695#[cfg(feature = "grid")]
696mod grid_placement_definite_in_secondary_axis_with_fully_definite_negative;
697#[cfg(feature = "grid")]
698mod grid_relative_all_sides;
699#[cfg(feature = "grid")]
700mod grid_relayout_vertical_text;
701#[cfg(feature = "grid")]
702mod grid_repeat_integer;
703#[cfg(feature = "grid")]
704mod grid_repeat_mixed;
705#[cfg(feature = "grid")]
706mod grid_size_child_fixed_tracks;
707#[cfg(feature = "grid")]
708mod grid_span_13_most_non_flex_with_minmax_indefinite;
709#[cfg(feature = "grid")]
710mod grid_span_2_max_content_auto_indefinite;
711#[cfg(feature = "grid")]
712mod grid_span_2_max_content_fit_content_10px_indefinite;
713#[cfg(feature = "grid")]
714mod grid_span_2_max_content_fit_content_80px_indefinite;
715#[cfg(feature = "grid")]
716mod grid_span_2_max_content_max_content_indefinite;
717#[cfg(feature = "grid")]
718mod grid_span_2_min_content_auto_indefinite;
719#[cfg(feature = "grid")]
720mod grid_span_2_min_content_fit_content_10px_indefinite;
721#[cfg(feature = "grid")]
722mod grid_span_2_min_content_fit_content_30px_indefinite;
723#[cfg(feature = "grid")]
724mod grid_span_2_min_content_fit_content_80px_indefinite;
725#[cfg(feature = "grid")]
726mod grid_span_2_min_content_max_content_indefinite;
727#[cfg(feature = "grid")]
728mod grid_span_2_min_content_min_content_indefinite;
729#[cfg(feature = "grid")]
730mod grid_span_6_all_non_flex_indefinite;
731#[cfg(feature = "grid")]
732mod grid_span_8_all_track_types_indefinite;
733#[cfg(feature = "grid")]
734mod gridflex_column_integration;
735#[cfg(feature = "grid")]
736mod gridflex_kitchen_sink;
737#[cfg(feature = "grid")]
738mod gridflex_kitchen_sink_minimise;
739#[cfg(feature = "grid")]
740mod gridflex_kitchen_sink_minimise2;
741#[cfg(feature = "grid")]
742mod gridflex_kitchen_sink_minimise3;
743#[cfg(feature = "grid")]
744mod gridflex_row_integration;
745mod intrinsic_sizing_cross_size_column;
746mod intrinsic_sizing_main_size_column;
747mod intrinsic_sizing_main_size_column_nested;
748mod intrinsic_sizing_main_size_column_wrap;
749mod intrinsic_sizing_main_size_row;
750mod intrinsic_sizing_main_size_row_nested;
751mod intrinsic_sizing_main_size_row_wrap;
752mod justify_content_column_center;
753mod justify_content_column_flex_end;
754mod justify_content_column_flex_start;
755mod justify_content_column_max_height_and_margin;
756mod justify_content_column_min_height_and_margin;
757mod justify_content_column_min_height_and_margin_bottom;
758mod justify_content_column_min_height_and_margin_top;
759mod justify_content_column_space_around;
760mod justify_content_column_space_between;
761mod justify_content_column_space_evenly;
762mod justify_content_min_max;
763mod justify_content_min_width_with_padding_child_width_greater_than_parent;
764mod justify_content_min_width_with_padding_child_width_lower_than_parent;
765mod justify_content_overflow_min_max;
766mod justify_content_row_center;
767mod justify_content_row_flex_end;
768mod justify_content_row_flex_start;
769mod justify_content_row_max_width_and_margin;
770mod justify_content_row_min_width_and_margin;
771mod justify_content_row_space_around;
772mod justify_content_row_space_between;
773mod justify_content_row_space_evenly;
774mod leaf_padding_border_overrides_max_size;
775mod leaf_padding_border_overrides_min_size;
776mod leaf_padding_border_overrides_size;
777mod margin_and_flex_column;
778mod margin_and_flex_row;
779mod margin_and_stretch_column;
780mod margin_and_stretch_row;
781mod margin_auto_bottom;
782mod margin_auto_bottom_and_top;
783mod margin_auto_bottom_and_top_justify_center;
784mod margin_auto_left;
785mod margin_auto_left_and_right;
786mod margin_auto_left_and_right_column;
787mod margin_auto_left_and_right_column_and_center;
788mod margin_auto_left_and_right_stretch;
789mod margin_auto_left_child_bigger_than_parent;
790mod margin_auto_left_fix_right_child_bigger_than_parent;
791mod margin_auto_left_right_child_bigger_than_parent;
792mod margin_auto_left_stretching_child;
793mod margin_auto_mutiple_children_column;
794mod margin_auto_mutiple_children_row;
795mod margin_auto_right;
796mod margin_auto_top;
797mod margin_auto_top_and_bottom_stretch;
798mod margin_auto_top_stretching_child;
799mod margin_bottom;
800mod margin_fix_left_auto_right_child_bigger_than_parent;
801mod margin_left;
802mod margin_right;
803mod margin_should_not_be_part_of_max_height;
804mod margin_should_not_be_part_of_max_width;
805mod margin_top;
806mod margin_with_sibling_column;
807mod margin_with_sibling_row;
808mod max_height;
809mod max_height_overrides_height;
810mod max_height_overrides_height_on_root;
811mod max_width;
812mod max_width_overrides_width;
813mod max_width_overrides_width_on_root;
814mod measure_child;
815mod measure_child_absolute;
816mod measure_child_constraint;
817mod measure_child_constraint_padding_parent;
818mod measure_child_with_flex_grow;
819mod measure_child_with_flex_shrink;
820mod measure_child_with_min_size_greater_than_available_space;
821mod measure_flex_basis_overrides_measure;
822mod measure_height_overrides_measure;
823mod measure_remeasure_child_after_growing;
824mod measure_remeasure_child_after_shrinking;
825mod measure_remeasure_child_after_stretching;
826mod measure_root;
827mod measure_stretch_overrides_measure;
828mod measure_width_overrides_measure;
829mod min_height;
830mod min_height_larger_than_height;
831mod min_height_overrides_height;
832mod min_height_overrides_height_on_root;
833mod min_height_overrides_max_height;
834mod min_height_with_nested_fixed_height;
835mod min_max_percent_different_width_height;
836mod min_max_percent_no_width_height;
837mod min_width;
838mod min_width_larger_than_width;
839mod min_width_overrides_max_width;
840mod min_width_overrides_width;
841mod min_width_overrides_width_on_root;
842mod nested_overflowing_child;
843mod nested_overflowing_child_in_constraint_parent;
844mod only_shrinkable_item_with_flex_basis_zero;
845mod overflow_cross_axis;
846mod overflow_main_axis;
847mod padding_align_end_child;
848mod padding_border_overrides_max_size;
849mod padding_border_overrides_min_size;
850mod padding_border_overrides_size;
851mod padding_border_overrides_size_flex_basis_0;
852mod padding_border_overrides_size_flex_basis_0_growable;
853mod padding_center_child;
854mod padding_container_match_child;
855mod padding_flex_child;
856mod padding_no_child;
857mod padding_no_size;
858mod padding_stretch_child;
859mod parent_wrap_child_size_overflowing_parent;
860mod percent_absolute_position;
861mod percent_within_flex_grow;
862mod percentage_absolute_position;
863mod percentage_container_in_wrapping_container;
864mod percentage_different_width_height;
865mod percentage_different_width_height_column;
866mod percentage_flex_basis;
867mod percentage_flex_basis_cross;
868mod percentage_flex_basis_cross_max_height;
869mod percentage_flex_basis_cross_max_width;
870mod percentage_flex_basis_cross_min_height;
871mod percentage_flex_basis_cross_min_width;
872mod percentage_flex_basis_main_max_height;
873mod percentage_flex_basis_main_max_width;
874mod percentage_flex_basis_main_min_width;
875mod percentage_main_max_height;
876mod percentage_margin_should_calculate_based_only_on_width;
877mod percentage_moderate_complexity;
878mod percentage_moderate_complexity2;
879mod percentage_multiple_nested_with_padding_margin_and_percentage_values;
880mod percentage_padding_should_calculate_based_only_on_width;
881mod percentage_position_bottom_right;
882mod percentage_position_left_top;
883mod percentage_size_based_on_parent_inner_size;
884mod percentage_size_of_flex_basis;
885mod percentage_sizes_should_not_prevent_flex_shrinking;
886mod percentage_width_height;
887mod percentage_width_height_undefined_parent_size;
888mod position_root_with_rtl_should_position_withoutdirection;
889mod relative_position_should_not_nudge_siblings;
890mod rounding_flex_basis_flex_grow_row_prime_number_width;
891mod rounding_flex_basis_flex_grow_row_width_of_100;
892mod rounding_flex_basis_flex_shrink_row;
893mod rounding_flex_basis_overrides_main_size;
894mod rounding_fractial_input_1;
895mod rounding_fractial_input_2;
896mod rounding_fractial_input_3;
897mod rounding_fractial_input_4;
898mod rounding_fractial_input_5;
899mod rounding_fractial_input_6;
900mod rounding_fractial_input_7;
901mod rounding_inner_node_controversy_combined;
902mod rounding_inner_node_controversy_horizontal;
903mod rounding_inner_node_controversy_vertical;
904mod rounding_total_fractial;
905mod rounding_total_fractial_nested;
906mod simple_child;
907mod single_flex_child_after_absolute_child;
908mod size_defined_by_child;
909mod size_defined_by_child_with_border;
910mod size_defined_by_child_with_padding;
911mod size_defined_by_grand_child;
912mod undefined_height_with_min_max;
913mod undefined_width_with_min_max;
914mod undefined_width_with_min_max_row;
915mod width_smaller_then_content_with_flex_grow_large_size;
916mod width_smaller_then_content_with_flex_grow_small_size;
917mod width_smaller_then_content_with_flex_grow_unconstraint_size;
918mod width_smaller_then_content_with_flex_grow_very_large_size;
919mod wrap_child;
920mod wrap_column;
921mod wrap_grandchild;
922mod wrap_nodes_with_content_sizing_margin_cross;
923mod wrap_nodes_with_content_sizing_overflowing_margin;
924mod wrap_reverse_column;
925mod wrap_reverse_column_fixed_size;
926mod wrap_reverse_row;
927mod wrap_reverse_row_align_content_center;
928mod wrap_reverse_row_align_content_flex_start;
929mod wrap_reverse_row_align_content_space_around;
930mod wrap_reverse_row_align_content_stretch;
931mod wrap_reverse_row_single_line_different_size;
932mod wrap_row;
933mod wrap_row_align_items_center;
934mod wrap_row_align_items_flex_end;
935mod wrapped_column_max_height;
936mod wrapped_column_max_height_flex;
937mod wrapped_row_within_align_items_center;
938mod wrapped_row_within_align_items_flex_end;
939mod wrapped_row_within_align_items_flex_start;