Skip to content

Commit 6609d19

Browse files
committed
deploy: 055173b
1 parent eff628b commit 6609d19

File tree

12 files changed

+113
-23
lines changed

12 files changed

+113
-23
lines changed

dev/src/uu_df/df.rs.html

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -701,6 +701,9 @@
701701
<span id="699">699</span>
702702
<span id="700">700</span>
703703
<span id="701">701</span>
704+
<span id="702">702</span>
705+
<span id="703">703</span>
706+
<span id="704">704</span>
704707
</pre><pre class="rust"><code><span class="comment">// This file is part of the uutils coreutils package.</span>
705708
<span class="comment">//</span>
706709
<span class="comment">// (c) Fangxu Hu &lt;framlog@gmail.com&gt;</span>
@@ -946,7 +949,10 @@
946949

947950
<span class="comment">// Convert each `MountInfo` into a `Filesystem`, which contains</span>
948951
<span class="comment">// both the mount information and usage information.</span>
949-
<span class="ident">mounts</span>.<span class="ident">into_iter</span>().<span class="ident">filter_map</span>(<span class="ident">Filesystem::new</span>).<span class="ident">collect</span>()
952+
<span class="ident">mounts</span>
953+
.<span class="ident">into_iter</span>()
954+
.<span class="ident">filter_map</span>(<span class="op">|</span><span class="ident">m</span><span class="op">|</span> <span class="ident">Filesystem::new</span>(<span class="ident">m</span>, <span class="prelude-val">None</span>))
955+
.<span class="ident">collect</span>()
950956
}
951957

952958
<span class="doccomment">/// For each path, get the filesystem that contains that path.</span>

dev/src/uu_df/filesystem.rs.html

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,18 @@
191191
<span id="189">189</span>
192192
<span id="190">190</span>
193193
<span id="191">191</span>
194+
<span id="192">192</span>
195+
<span id="193">193</span>
196+
<span id="194">194</span>
197+
<span id="195">195</span>
198+
<span id="196">196</span>
199+
<span id="197">197</span>
200+
<span id="198">198</span>
201+
<span id="199">199</span>
202+
<span id="200">200</span>
203+
<span id="201">201</span>
204+
<span id="202">202</span>
205+
<span id="203">203</span>
194206
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.</span>
195207
<span class="comment">// *</span>
196208
<span class="comment">// * For the full copyright and license information, please view the LICENSE</span>
@@ -216,6 +228,13 @@
216228
<span class="doccomment">/// space available on the filesystem and the amount of space used.</span>
217229
<span class="attribute">#[<span class="ident">derive</span>(<span class="ident">Debug</span>, <span class="ident">Clone</span>)]</span>
218230
<span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">struct</span> <span class="ident">Filesystem</span> {
231+
<span class="doccomment">/// The file given on the command line if any.</span>
232+
<span class="doccomment">///</span>
233+
<span class="doccomment">/// When invoking `df` with a positional argument, it displays</span>
234+
<span class="doccomment">/// usage information for the filesystem that contains the given</span>
235+
<span class="doccomment">/// file. If given, this field contains that filename.</span>
236+
<span class="kw">pub</span> <span class="ident">file</span>: <span class="prelude-ty">Option</span><span class="op">&lt;</span><span class="ident">String</span><span class="op">&gt;</span>,
237+
219238
<span class="doccomment">/// Information about the mounted device, mount directory, and related options.</span>
220239
<span class="kw">pub</span> <span class="ident">mount_info</span>: <span class="ident">MountInfo</span>,
221240

@@ -259,7 +278,7 @@
259278

260279
<span class="kw">impl</span> <span class="ident">Filesystem</span> {
261280
<span class="comment">// TODO: resolve uuid in `mount_info.dev_name` if exists</span>
262-
<span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn</span> <span class="ident">new</span>(<span class="ident">mount_info</span>: <span class="ident">MountInfo</span>) -&gt; <span class="prelude-ty">Option</span><span class="op">&lt;</span><span class="self">Self</span><span class="op">&gt;</span> {
281+
<span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn</span> <span class="ident">new</span>(<span class="ident">mount_info</span>: <span class="ident">MountInfo</span>, <span class="ident">file</span>: <span class="prelude-ty">Option</span><span class="op">&lt;</span><span class="ident">String</span><span class="op">&gt;</span>) -&gt; <span class="prelude-ty">Option</span><span class="op">&lt;</span><span class="self">Self</span><span class="op">&gt;</span> {
263282
<span class="kw">let</span> <span class="ident">_stat_path</span> <span class="op">=</span> <span class="kw">if</span> <span class="op">!</span><span class="ident">mount_info</span>.<span class="ident">mount_dir</span>.<span class="ident">is_empty</span>() {
264283
<span class="ident">mount_info</span>.<span class="ident">mount_dir</span>.<span class="ident">clone</span>()
265284
} <span class="kw">else</span> {
@@ -277,7 +296,11 @@
277296
<span class="kw">let</span> <span class="ident">usage</span> <span class="op">=</span> <span class="ident">FsUsage::new</span>(<span class="ident">statfs</span>(<span class="ident">_stat_path</span>).<span class="ident">ok</span>()<span class="question-mark">?</span>);
278297
<span class="attribute">#[<span class="ident">cfg</span>(<span class="ident">windows</span>)]</span>
279298
<span class="kw">let</span> <span class="ident">usage</span> <span class="op">=</span> <span class="ident">FsUsage::new</span>(<span class="ident">Path::new</span>(<span class="kw-2">&amp;</span><span class="ident">_stat_path</span>));
280-
<span class="prelude-val">Some</span>(<span class="self">Self</span> { <span class="ident">mount_info</span>, <span class="ident">usage</span> })
299+
<span class="prelude-val">Some</span>(<span class="self">Self</span> {
300+
<span class="ident">mount_info</span>,
301+
<span class="ident">usage</span>,
302+
<span class="ident">file</span>,
303+
})
281304
}
282305

283306
<span class="doccomment">/// Find and create the filesystem that best matches a given path.</span>
@@ -300,11 +323,12 @@
300323
<span class="kw">where</span>
301324
<span class="ident">P</span>: <span class="ident">AsRef</span><span class="op">&lt;</span><span class="ident">Path</span><span class="op">&gt;</span>,
302325
{
326+
<span class="kw">let</span> <span class="ident">file</span> <span class="op">=</span> <span class="ident">path</span>.<span class="ident">as_ref</span>().<span class="ident">display</span>().<span class="ident">to_string</span>();
303327
<span class="kw">let</span> <span class="ident">canonicalize</span> <span class="op">=</span> <span class="bool-val">true</span>;
304328
<span class="kw">let</span> <span class="ident">mount_info</span> <span class="op">=</span> <span class="ident">mount_info_from_path</span>(<span class="ident">mounts</span>, <span class="ident">path</span>, <span class="ident">canonicalize</span>)<span class="question-mark">?</span>;
305329
<span class="comment">// TODO Make it so that we do not need to clone the `mount_info`.</span>
306330
<span class="kw">let</span> <span class="ident">mount_info</span> <span class="op">=</span> (<span class="kw-2">*</span><span class="ident">mount_info</span>).<span class="ident">clone</span>();
307-
<span class="ident"><span class="self">Self</span>::new</span>(<span class="ident">mount_info</span>)
331+
<span class="ident"><span class="self">Self</span>::new</span>(<span class="ident">mount_info</span>, <span class="prelude-val">Some</span>(<span class="ident">file</span>))
308332
}
309333
}
310334

dev/src/uu_df/table.rs.html

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -585,6 +585,19 @@
585585
<span id="583">583</span>
586586
<span id="584">584</span>
587587
<span id="585">585</span>
588+
<span id="586">586</span>
589+
<span id="587">587</span>
590+
<span id="588">588</span>
591+
<span id="589">589</span>
592+
<span id="590">590</span>
593+
<span id="591">591</span>
594+
<span id="592">592</span>
595+
<span id="593">593</span>
596+
<span id="594">594</span>
597+
<span id="595">595</span>
598+
<span id="596">596</span>
599+
<span id="597">597</span>
600+
<span id="598">598</span>
588601
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.</span>
589602
<span class="comment">// *</span>
590603
<span class="comment">// * For the full copyright and license information, please view the LICENSE</span>
@@ -611,6 +624,9 @@
611624
<span class="doccomment">/// A row comprises several pieces of information, including the</span>
612625
<span class="doccomment">/// filesystem device, the mountpoint, the number of bytes used, etc.</span>
613626
<span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">struct</span> <span class="ident">Row</span> {
627+
<span class="doccomment">/// The filename given on the command-line, if given.</span>
628+
<span class="ident">file</span>: <span class="prelude-ty">Option</span><span class="op">&lt;</span><span class="ident">String</span><span class="op">&gt;</span>,
629+
614630
<span class="doccomment">/// Name of the device on which the filesystem lives.</span>
615631
<span class="ident">fs_device</span>: <span class="ident">String</span>,
616632

@@ -660,6 +676,7 @@
660676
<span class="kw">impl</span> <span class="ident">Row</span> {
661677
<span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn</span> <span class="ident">new</span>(<span class="ident">source</span>: <span class="kw-2">&amp;</span><span class="ident">str</span>) -&gt; <span class="self">Self</span> {
662678
<span class="self">Self</span> {
679+
<span class="ident">file</span>: <span class="prelude-val">None</span>,
663680
<span class="ident">fs_device</span>: <span class="ident">source</span>.<span class="ident">into</span>(),
664681
<span class="ident">fs_type</span>: <span class="string">&quot;-&quot;</span>.<span class="ident">into</span>(),
665682
<span class="ident">fs_mount</span>: <span class="string">&quot;-&quot;</span>.<span class="ident">into</span>(),
@@ -688,6 +705,7 @@
688705
<span class="kw">let</span> <span class="ident">inodes</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">inodes</span> <span class="op">+</span> <span class="ident">rhs</span>.<span class="ident">inodes</span>;
689706
<span class="kw">let</span> <span class="ident">inodes_used</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">inodes_used</span> <span class="op">+</span> <span class="ident">rhs</span>.<span class="ident">inodes_used</span>;
690707
<span class="kw-2">*</span><span class="self">self</span> <span class="op">=</span> <span class="self">Self</span> {
708+
<span class="ident">file</span>: <span class="prelude-val">None</span>,
691709
<span class="ident">fs_device</span>: <span class="string">&quot;total&quot;</span>.<span class="ident">into</span>(),
692710
<span class="ident">fs_type</span>: <span class="string">&quot;-&quot;</span>.<span class="ident">into</span>(),
693711
<span class="ident">fs_mount</span>: <span class="string">&quot;-&quot;</span>.<span class="ident">into</span>(),
@@ -732,6 +750,7 @@
732750
..
733751
} <span class="op">=</span> <span class="ident">fs</span>.<span class="ident">usage</span>;
734752
<span class="self">Self</span> {
753+
<span class="ident">file</span>: <span class="ident">fs</span>.<span class="ident">file</span>,
735754
<span class="ident">fs_device</span>: <span class="ident">dev_name</span>,
736755
<span class="ident">fs_type</span>,
737756
<span class="ident">fs_mount</span>: <span class="ident">mount_dir</span>,
@@ -833,8 +852,9 @@
833852
<span class="ident">Column::Ipcent</span> =&gt; {
834853
<span class="macro">write!</span>(<span class="ident">f</span>, <span class="string">&quot;{0: &gt;5} &quot;</span>, <span class="ident">DisplayRow::percentage</span>(<span class="self">self</span>.<span class="ident">row</span>.<span class="ident">inodes_usage</span>))<span class="question-mark">?</span>;
835854
}
836-
<span class="comment">// TODO Implement this.</span>
837-
<span class="ident">Column::File</span> =&gt; {}
855+
<span class="ident">Column::File</span> =&gt; {
856+
<span class="macro">write!</span>(<span class="ident">f</span>, <span class="string">&quot;{0: &lt;16}&quot;</span>, <span class="self">self</span>.<span class="ident">row</span>.<span class="ident">file</span>.<span class="ident">as_ref</span>().<span class="ident">unwrap_or</span>(<span class="kw-2">&amp;</span><span class="string">&quot;-&quot;</span>.<span class="ident">into</span>()))<span class="question-mark">?</span>;
857+
}
838858
<span class="ident">Column::Fstype</span> =&gt; <span class="macro">write!</span>(<span class="ident">f</span>, <span class="string">&quot;{0: &lt;5} &quot;</span>, <span class="self">self</span>.<span class="ident">row</span>.<span class="ident">fs_type</span>)<span class="question-mark">?</span>,
839859
<span class="attribute">#[<span class="ident">cfg</span>(<span class="ident">target_os</span> <span class="op">=</span> <span class="string">&quot;macos&quot;</span>)]</span>
840860
<span class="ident">Column::Capacity</span> =&gt; <span class="macro">write!</span>(
@@ -993,6 +1013,7 @@
9931013
..<span class="ident">Default::default</span>()
9941014
};
9951015
<span class="kw">let</span> <span class="ident">row</span> <span class="op">=</span> <span class="ident">Row</span> {
1016+
<span class="ident">file</span>: <span class="prelude-val">Some</span>(<span class="string">&quot;/path/to/file&quot;</span>.<span class="ident">to_string</span>()),
9961017
<span class="ident">fs_device</span>: <span class="string">&quot;my_device&quot;</span>.<span class="ident">to_string</span>(),
9971018
<span class="ident">fs_type</span>: <span class="string">&quot;my_type&quot;</span>.<span class="ident">to_string</span>(),
9981019
<span class="ident">fs_mount</span>: <span class="string">&quot;my_mount&quot;</span>.<span class="ident">to_string</span>(),
@@ -1024,6 +1045,7 @@
10241045
..<span class="ident">Default::default</span>()
10251046
};
10261047
<span class="kw">let</span> <span class="ident">row</span> <span class="op">=</span> <span class="ident">Row</span> {
1048+
<span class="ident">file</span>: <span class="prelude-val">Some</span>(<span class="string">&quot;/path/to/file&quot;</span>.<span class="ident">to_string</span>()),
10271049
<span class="ident">fs_device</span>: <span class="string">&quot;my_device&quot;</span>.<span class="ident">to_string</span>(),
10281050
<span class="ident">fs_type</span>: <span class="string">&quot;my_type&quot;</span>.<span class="ident">to_string</span>(),
10291051
<span class="ident">fs_mount</span>: <span class="string">&quot;my_mount&quot;</span>.<span class="ident">to_string</span>(),
@@ -1055,6 +1077,7 @@
10551077
..<span class="ident">Default::default</span>()
10561078
};
10571079
<span class="kw">let</span> <span class="ident">row</span> <span class="op">=</span> <span class="ident">Row</span> {
1080+
<span class="ident">file</span>: <span class="prelude-val">Some</span>(<span class="string">&quot;/path/to/file&quot;</span>.<span class="ident">to_string</span>()),
10581081
<span class="ident">fs_device</span>: <span class="string">&quot;my_device&quot;</span>.<span class="ident">to_string</span>(),
10591082
<span class="ident">fs_type</span>: <span class="string">&quot;my_type&quot;</span>.<span class="ident">to_string</span>(),
10601083
<span class="ident">fs_mount</span>: <span class="string">&quot;my_mount&quot;</span>.<span class="ident">to_string</span>(),
@@ -1086,6 +1109,7 @@
10861109
..<span class="ident">Default::default</span>()
10871110
};
10881111
<span class="kw">let</span> <span class="ident">row</span> <span class="op">=</span> <span class="ident">Row</span> {
1112+
<span class="ident">file</span>: <span class="prelude-val">Some</span>(<span class="string">&quot;/path/to/file&quot;</span>.<span class="ident">to_string</span>()),
10891113
<span class="ident">fs_device</span>: <span class="string">&quot;my_device&quot;</span>.<span class="ident">to_string</span>(),
10901114
<span class="ident">fs_type</span>: <span class="string">&quot;my_type&quot;</span>.<span class="ident">to_string</span>(),
10911115
<span class="ident">fs_mount</span>: <span class="string">&quot;my_mount&quot;</span>.<span class="ident">to_string</span>(),
@@ -1117,6 +1141,7 @@
11171141
..<span class="ident">Default::default</span>()
11181142
};
11191143
<span class="kw">let</span> <span class="ident">row</span> <span class="op">=</span> <span class="ident">Row</span> {
1144+
<span class="ident">file</span>: <span class="prelude-val">Some</span>(<span class="string">&quot;/path/to/file&quot;</span>.<span class="ident">to_string</span>()),
11201145
<span class="ident">fs_device</span>: <span class="string">&quot;my_device&quot;</span>.<span class="ident">to_string</span>(),
11211146
<span class="ident">fs_type</span>: <span class="string">&quot;my_type&quot;</span>.<span class="ident">to_string</span>(),
11221147
<span class="ident">fs_mount</span>: <span class="string">&quot;my_mount&quot;</span>.<span class="ident">to_string</span>(),
@@ -1147,6 +1172,7 @@
11471172
..<span class="ident">Default::default</span>()
11481173
};
11491174
<span class="kw">let</span> <span class="ident">row</span> <span class="op">=</span> <span class="ident">Row</span> {
1175+
<span class="ident">file</span>: <span class="prelude-val">Some</span>(<span class="string">&quot;/path/to/file&quot;</span>.<span class="ident">to_string</span>()),
11501176
<span class="ident">fs_device</span>: <span class="string">&quot;my_device&quot;</span>.<span class="ident">to_string</span>(),
11511177
<span class="ident">fs_type</span>: <span class="string">&quot;my_type&quot;</span>.<span class="ident">to_string</span>(),
11521178
<span class="ident">fs_mount</span>: <span class="string">&quot;my_mount&quot;</span>.<span class="ident">to_string</span>(),

0 commit comments

Comments
 (0)