]> git.proxmox.com Git - rustc.git/blob - src/tools/rustfmt/tests/target/issue-510.rs
a166b68498fa0672a96bb31fab427cf935472fed
[rustc.git] / src / tools / rustfmt / tests / target / issue-510.rs
1 impl ISizeAndMarginsComputer for AbsoluteNonReplaced {
2 fn solve_inline_size_constraints(
3 &self,
4 block: &mut BlockFlow,
5 input: &ISizeConstraintInput,
6 ) -> ISizeConstraintSolution {
7 let (inline_start, inline_size, margin_inline_start, margin_inline_end) = match (
8 inline_startssssssxxxxxxsssssxxxxxxxxxssssssxxx,
9 inline_startssssssxxxxxxsssssxxxxxxxxxssssssxxx,
10 ) {
11 (MaybeAuto::Auto, MaybeAuto::Auto, MaybeAuto::Auto) => {
12 let margin_start = inline_start_margin.specified_or_zero();
13 let margin_end = inline_end_margin.specified_or_zero();
14 // Now it is the same situation as inline-start Specified and inline-end
15 // and inline-size Auto.
16 //
17 // Set inline-end to zero to calculate inline-size.
18 let inline_size = block.get_shrink_to_fit_inline_size(
19 available_inline_size - (margin_start + margin_end),
20 );
21 (Au(0), inline_size, margin_start, margin_end)
22 }
23 };
24
25 let (inline_start, inline_size, margin_inline_start, margin_inline_end) =
26 match (inline_start, inline_end, computed_inline_size) {
27 (MaybeAuto::Auto, MaybeAuto::Auto, MaybeAuto::Auto) => {
28 let margin_start = inline_start_margin.specified_or_zero();
29 let margin_end = inline_end_margin.specified_or_zero();
30 // Now it is the same situation as inline-start Specified and inline-end
31 // and inline-size Auto.
32 //
33 // Set inline-end to zero to calculate inline-size.
34 let inline_size = block.get_shrink_to_fit_inline_size(
35 available_inline_size - (margin_start + margin_end),
36 );
37 (Au(0), inline_size, margin_start, margin_end)
38 }
39 };
40 }
41 }