Skip to content

Commit facaabc

Browse files
committed
deploy: c249eba
1 parent 639de15 commit facaabc

File tree

1 file changed

+50
-14
lines changed

1 file changed

+50
-14
lines changed

dev/src/uu_df/table.rs.html

Lines changed: 50 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -794,6 +794,24 @@
794794
<span id="789">789</span>
795795
<span id="790">790</span>
796796
<span id="791">791</span>
797+
<span id="792">792</span>
798+
<span id="793">793</span>
799+
<span id="794">794</span>
800+
<span id="795">795</span>
801+
<span id="796">796</span>
802+
<span id="797">797</span>
803+
<span id="798">798</span>
804+
<span id="799">799</span>
805+
<span id="800">800</span>
806+
<span id="801">801</span>
807+
<span id="802">802</span>
808+
<span id="803">803</span>
809+
<span id="804">804</span>
810+
<span id="805">805</span>
811+
<span id="806">806</span>
812+
<span id="807">807</span>
813+
<span id="808">808</span>
814+
<span id="809">809</span>
797815
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.</span>
798816
<span class="comment">// *</span>
799817
<span class="comment">// * For the full copyright and license information, please view the LICENSE</span>
@@ -1000,12 +1018,18 @@
10001018
<span class="comment">// numbers. We could split the options up into those groups to</span>
10011019
<span class="comment">// reduce the coupling between this `table.rs` module and the main</span>
10021020
<span class="comment">// `df.rs` module.</span>
1021+
<span class="doccomment">/// Whether to use the special rules for displaying the total row.</span>
1022+
<span class="ident">is_total_row</span>: <span class="ident">bool</span>,
10031023
}
10041024

10051025
<span class="kw">impl</span><span class="op">&lt;</span><span class="lifetime">&#39;a</span><span class="op">&gt;</span> <span class="ident">RowFormatter</span><span class="op">&lt;</span><span class="lifetime">&#39;a</span><span class="op">&gt;</span> {
10061026
<span class="doccomment">/// Instantiate this struct.</span>
1007-
<span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn</span> <span class="ident">new</span>(<span class="ident">row</span>: <span class="kw-2">&amp;</span><span class="lifetime">&#39;a</span> <span class="ident">Row</span>, <span class="ident">options</span>: <span class="kw-2">&amp;</span><span class="lifetime">&#39;a</span> <span class="ident">Options</span>) -&gt; <span class="self">Self</span> {
1008-
<span class="self">Self</span> { <span class="ident">row</span>, <span class="ident">options</span> }
1027+
<span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn</span> <span class="ident">new</span>(<span class="ident">row</span>: <span class="kw-2">&amp;</span><span class="lifetime">&#39;a</span> <span class="ident">Row</span>, <span class="ident">options</span>: <span class="kw-2">&amp;</span><span class="lifetime">&#39;a</span> <span class="ident">Options</span>, <span class="ident">is_total_row</span>: <span class="ident">bool</span>) -&gt; <span class="self">Self</span> {
1028+
<span class="self">Self</span> {
1029+
<span class="ident">row</span>,
1030+
<span class="ident">options</span>,
1031+
<span class="ident">is_total_row</span>,
1032+
}
10091033
}
10101034

10111035
<span class="doccomment">/// Get a string giving the scaled version of the input number.</span>
@@ -1047,13 +1071,25 @@
10471071

10481072
<span class="kw">for</span> <span class="ident">column</span> <span class="kw">in</span> <span class="kw-2">&amp;</span><span class="self">self</span>.<span class="ident">options</span>.<span class="ident">columns</span> {
10491073
<span class="kw">let</span> <span class="ident">string</span> <span class="op">=</span> <span class="kw">match</span> <span class="ident">column</span> {
1050-
<span class="ident">Column::Source</span> =&gt; <span class="self">self</span>.<span class="ident">row</span>.<span class="ident">fs_device</span>.<span class="ident">to_string</span>(),
1074+
<span class="ident">Column::Source</span> =&gt; {
1075+
<span class="kw">if</span> <span class="self">self</span>.<span class="ident">is_total_row</span> {
1076+
<span class="string">&quot;total&quot;</span>.<span class="ident">to_string</span>()
1077+
} <span class="kw">else</span> {
1078+
<span class="self">self</span>.<span class="ident">row</span>.<span class="ident">fs_device</span>.<span class="ident">to_string</span>()
1079+
}
1080+
}
10511081
<span class="ident">Column::Size</span> =&gt; <span class="self">self</span>.<span class="ident">scaled_bytes</span>(<span class="self">self</span>.<span class="ident">row</span>.<span class="ident">bytes</span>),
10521082
<span class="ident">Column::Used</span> =&gt; <span class="self">self</span>.<span class="ident">scaled_bytes</span>(<span class="self">self</span>.<span class="ident">row</span>.<span class="ident">bytes_used</span>),
10531083
<span class="ident">Column::Avail</span> =&gt; <span class="self">self</span>.<span class="ident">scaled_bytes</span>(<span class="self">self</span>.<span class="ident">row</span>.<span class="ident">bytes_avail</span>),
10541084
<span class="ident">Column::Pcent</span> =&gt; <span class="ident"><span class="self">Self</span>::percentage</span>(<span class="self">self</span>.<span class="ident">row</span>.<span class="ident">bytes_usage</span>),
10551085

1056-
<span class="ident">Column::Target</span> =&gt; <span class="self">self</span>.<span class="ident">row</span>.<span class="ident">fs_mount</span>.<span class="ident">to_string</span>(),
1086+
<span class="ident">Column::Target</span> =&gt; {
1087+
<span class="kw">if</span> <span class="self">self</span>.<span class="ident">is_total_row</span> <span class="op">&amp;&amp;</span> <span class="op">!</span><span class="self">self</span>.<span class="ident">options</span>.<span class="ident">columns</span>.<span class="ident">contains</span>(<span class="kw-2">&amp;</span><span class="ident">Column::Source</span>) {
1088+
<span class="string">&quot;total&quot;</span>.<span class="ident">to_string</span>()
1089+
} <span class="kw">else</span> {
1090+
<span class="self">self</span>.<span class="ident">row</span>.<span class="ident">fs_mount</span>.<span class="ident">to_string</span>()
1091+
}
1092+
}
10571093
<span class="ident">Column::Itotal</span> =&gt; <span class="self">self</span>.<span class="ident">scaled_inodes</span>(<span class="self">self</span>.<span class="ident">row</span>.<span class="ident">inodes</span>),
10581094
<span class="ident">Column::Iused</span> =&gt; <span class="self">self</span>.<span class="ident">scaled_inodes</span>(<span class="self">self</span>.<span class="ident">row</span>.<span class="ident">inodes_used</span>),
10591095
<span class="ident">Column::Iavail</span> =&gt; <span class="self">self</span>.<span class="ident">scaled_inodes</span>(<span class="self">self</span>.<span class="ident">row</span>.<span class="ident">inodes_free</span>),
@@ -1167,7 +1203,7 @@
11671203
<span class="comment">// the output table.</span>
11681204
<span class="kw">if</span> <span class="ident">options</span>.<span class="ident">show_all_fs</span> <span class="op">|</span><span class="op">|</span> <span class="ident">filesystem</span>.<span class="ident">usage</span>.<span class="ident">blocks</span> <span class="op">&gt;</span> <span class="number">0</span> {
11691205
<span class="kw">let</span> <span class="ident">row</span> <span class="op">=</span> <span class="ident">Row::from</span>(<span class="ident">filesystem</span>);
1170-
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="ident">options</span>);
1206+
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="ident">options</span>, <span class="bool-val">false</span>);
11711207
<span class="kw">let</span> <span class="ident">values</span> <span class="op">=</span> <span class="ident">fmt</span>.<span class="ident">get_values</span>();
11721208
<span class="ident">total</span> <span class="op">+</span><span class="op">=</span> <span class="ident">row</span>;
11731209

@@ -1182,7 +1218,7 @@
11821218
}
11831219

11841220
<span class="kw">if</span> <span class="ident">options</span>.<span class="ident">show_total</span> {
1185-
<span class="kw">let</span> <span class="ident">total_row</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">total</span>, <span class="ident">options</span>);
1221+
<span class="kw">let</span> <span class="ident">total_row</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">total</span>, <span class="ident">options</span>, <span class="bool-val">true</span>);
11861222
<span class="ident">rows</span>.<span class="ident">push</span>(<span class="ident">total_row</span>.<span class="ident">get_values</span>());
11871223
}
11881224

@@ -1421,7 +1457,7 @@
14211457

14221458
..<span class="ident">Default::default</span>()
14231459
};
1424-
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>);
1460+
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>, <span class="bool-val">false</span>);
14251461
<span class="macro">assert_eq!</span>(
14261462
<span class="ident">fmt</span>.<span class="ident">get_values</span>(),
14271463
<span class="macro">vec!</span>(<span class="string">&quot;my_device&quot;</span>, <span class="string">&quot;100&quot;</span>, <span class="string">&quot;25&quot;</span>, <span class="string">&quot;75&quot;</span>, <span class="string">&quot;25%&quot;</span>, <span class="string">&quot;my_mount&quot;</span>)
@@ -1447,7 +1483,7 @@
14471483

14481484
..<span class="ident">Default::default</span>()
14491485
};
1450-
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>);
1486+
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>, <span class="bool-val">false</span>);
14511487
<span class="macro">assert_eq!</span>(
14521488
<span class="ident">fmt</span>.<span class="ident">get_values</span>(),
14531489
<span class="macro">vec!</span>(<span class="string">&quot;my_device&quot;</span>, <span class="string">&quot;my_type&quot;</span>, <span class="string">&quot;100&quot;</span>, <span class="string">&quot;25&quot;</span>, <span class="string">&quot;75&quot;</span>, <span class="string">&quot;25%&quot;</span>, <span class="string">&quot;my_mount&quot;</span>)
@@ -1472,7 +1508,7 @@
14721508

14731509
..<span class="ident">Default::default</span>()
14741510
};
1475-
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>);
1511+
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>, <span class="bool-val">false</span>);
14761512
<span class="macro">assert_eq!</span>(
14771513
<span class="ident">fmt</span>.<span class="ident">get_values</span>(),
14781514
<span class="macro">vec!</span>(<span class="string">&quot;my_device&quot;</span>, <span class="string">&quot;10&quot;</span>, <span class="string">&quot;2&quot;</span>, <span class="string">&quot;8&quot;</span>, <span class="string">&quot;20%&quot;</span>, <span class="string">&quot;my_mount&quot;</span>)
@@ -1491,7 +1527,7 @@
14911527
<span class="ident">inodes</span>: <span class="number">10</span>,
14921528
..<span class="ident">Default::default</span>()
14931529
};
1494-
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>);
1530+
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>, <span class="bool-val">false</span>);
14951531
<span class="macro">assert_eq!</span>(<span class="ident">fmt</span>.<span class="ident">get_values</span>(), <span class="macro">vec!</span>(<span class="string">&quot;1&quot;</span>, <span class="string">&quot;10&quot;</span>));
14961532
}
14971533

@@ -1514,7 +1550,7 @@
15141550

15151551
..<span class="ident">Default::default</span>()
15161552
};
1517-
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>);
1553+
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>, <span class="bool-val">false</span>);
15181554
<span class="macro">assert_eq!</span>(
15191555
<span class="ident">fmt</span>.<span class="ident">get_values</span>(),
15201556
<span class="macro">vec!</span>(<span class="string">&quot;my_device&quot;</span>, <span class="string">&quot;my_type&quot;</span>, <span class="string">&quot;4k&quot;</span>, <span class="string">&quot;1k&quot;</span>, <span class="string">&quot;3k&quot;</span>, <span class="string">&quot;25%&quot;</span>, <span class="string">&quot;my_mount&quot;</span>)
@@ -1540,7 +1576,7 @@
15401576

15411577
..<span class="ident">Default::default</span>()
15421578
};
1543-
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>);
1579+
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>, <span class="bool-val">false</span>);
15441580
<span class="macro">assert_eq!</span>(
15451581
<span class="ident">fmt</span>.<span class="ident">get_values</span>(),
15461582
<span class="macro">vec!</span>(<span class="string">&quot;my_device&quot;</span>, <span class="string">&quot;my_type&quot;</span>, <span class="string">&quot;4K&quot;</span>, <span class="string">&quot;1K&quot;</span>, <span class="string">&quot;3K&quot;</span>, <span class="string">&quot;25%&quot;</span>, <span class="string">&quot;my_mount&quot;</span>)
@@ -1557,7 +1593,7 @@
15571593
<span class="ident">bytes_usage</span>: <span class="prelude-val">Some</span>(<span class="number">0.251</span>),
15581594
..<span class="ident">Default::default</span>()
15591595
};
1560-
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>);
1596+
<span class="kw">let</span> <span class="ident">fmt</span> <span class="op">=</span> <span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>, <span class="bool-val">false</span>);
15611597
<span class="macro">assert_eq!</span>(<span class="ident">fmt</span>.<span class="ident">get_values</span>(), <span class="macro">vec!</span>(<span class="string">&quot;26%&quot;</span>));
15621598
}
15631599

@@ -1576,7 +1612,7 @@
15761612
<span class="ident">bytes_avail</span>,
15771613
..<span class="ident">Default::default</span>()
15781614
};
1579-
<span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>).<span class="ident">get_values</span>()
1615+
<span class="ident">RowFormatter::new</span>(<span class="kw-2">&amp;</span><span class="ident">row</span>, <span class="kw-2">&amp;</span><span class="ident">options</span>, <span class="bool-val">false</span>).<span class="ident">get_values</span>()
15801616
}
15811617

15821618
<span class="macro">assert_eq!</span>(<span class="ident">get_formatted_values</span>(<span class="number">100</span>, <span class="number">100</span>, <span class="number">0</span>), <span class="macro">vec!</span>(<span class="string">&quot;1&quot;</span>, <span class="string">&quot;1&quot;</span>, <span class="string">&quot;0&quot;</span>));

0 commit comments

Comments
 (0)