]> git.lizzy.rs Git - rust.git/blob - src/tools/rustfmt/tests/target/issue-510.rs
:arrow_up: rust-analyzer
[rust.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 }