Skip to content

Commit 882d296

Browse files
committed
deploy: 055173b
1 parent 2914159 commit 882d296

File tree

16 files changed

+299
-43
lines changed

16 files changed

+299
-43
lines changed

dev/src/uu_chmod/chmod.rs.html

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -378,6 +378,15 @@
378378
<span id="376">376</span>
379379
<span id="377">377</span>
380380
<span id="378">378</span>
381+
<span id="379">379</span>
382+
<span id="380">380</span>
383+
<span id="381">381</span>
384+
<span id="382">382</span>
385+
<span id="383">383</span>
386+
<span id="384">384</span>
387+
<span id="385">385</span>
388+
<span id="386">386</span>
389+
<span id="387">387</span>
381390
</pre><pre class="rust"><code><span class="comment">// This file is part of the uutils coreutils package.</span>
382391
<span class="comment">//</span>
383392
<span class="comment">// (c) Alex Lyon &lt;arcterus@mail.com&gt;</span>
@@ -398,7 +407,6 @@
398407
<span class="attribute">#[<span class="ident">cfg</span>(<span class="ident">not</span>(<span class="ident">windows</span>))]</span>
399408
<span class="kw">use</span> <span class="ident">uucore::mode</span>;
400409
<span class="kw">use</span> <span class="ident">uucore</span>::{<span class="ident">format_usage</span>, <span class="ident">show_error</span>, <span class="ident">InvalidEncodingHandling</span>};
401-
<span class="kw">use</span> <span class="ident">walkdir::WalkDir</span>;
402410

403411
<span class="kw">static</span> <span class="ident">ABOUT</span>: <span class="kw-2">&amp;</span><span class="ident">str</span> <span class="op">=</span> <span class="string">&quot;Change the mode of each FILE to MODE.
404412
With --reference, change the mode of each FILE to that of RFILE.&quot;</span>;
@@ -607,9 +615,19 @@
607615
<span class="kw">if</span> <span class="op">!</span><span class="self">self</span>.<span class="ident">recursive</span> {
608616
<span class="ident">r</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">chmod_file</span>(<span class="ident">file</span>).<span class="ident">and</span>(<span class="ident">r</span>);
609617
} <span class="kw">else</span> {
610-
<span class="kw">for</span> <span class="ident">entry</span> <span class="kw">in</span> <span class="ident">WalkDir::new</span>(<span class="kw-2">&amp;</span><span class="ident">filename</span>).<span class="ident">into_iter</span>().<span class="ident">filter_map</span>(<span class="op">|</span><span class="ident">e</span><span class="op">|</span> <span class="ident">e</span>.<span class="ident">ok</span>()) {
611-
<span class="kw">let</span> <span class="ident">file</span> <span class="op">=</span> <span class="ident">entry</span>.<span class="ident">path</span>();
612-
<span class="ident">r</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">chmod_file</span>(<span class="ident">file</span>).<span class="ident">and</span>(<span class="ident">r</span>);
618+
<span class="ident">r</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">walk_dir</span>(<span class="ident">file</span>);
619+
}
620+
}
621+
<span class="ident">r</span>
622+
}
623+
624+
<span class="kw">fn</span> <span class="ident">walk_dir</span>(<span class="kw-2">&amp;</span><span class="self">self</span>, <span class="ident">file_path</span>: <span class="kw-2">&amp;</span><span class="ident">Path</span>) -&gt; <span class="ident">UResult</span><span class="op">&lt;</span>()<span class="op">&gt;</span> {
625+
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">r</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">chmod_file</span>(<span class="ident">file_path</span>);
626+
<span class="kw">if</span> <span class="op">!</span><span class="ident">is_symlink</span>(<span class="ident">file_path</span>) <span class="op">&amp;&amp;</span> <span class="ident">file_path</span>.<span class="ident">is_dir</span>() {
627+
<span class="kw">for</span> <span class="ident">dir_entry</span> <span class="kw">in</span> <span class="ident">file_path</span>.<span class="ident">read_dir</span>()<span class="question-mark">?</span> {
628+
<span class="kw">let</span> <span class="ident">path</span> <span class="op">=</span> <span class="ident">dir_entry</span><span class="question-mark">?</span>.<span class="ident">path</span>();
629+
<span class="kw">if</span> <span class="op">!</span><span class="ident">is_symlink</span>(<span class="kw-2">&amp;</span><span class="ident">path</span>) {
630+
<span class="ident">r</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">walk_dir</span>(<span class="ident">path</span>.<span class="ident">as_path</span>());
613631
}
614632
}
615633
}

dev/src/uu_mkdir/mkdir.rs.html

Lines changed: 62 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,28 @@
186186
<span id="184">184</span>
187187
<span id="185">185</span>
188188
<span id="186">186</span>
189+
<span id="187">187</span>
190+
<span id="188">188</span>
191+
<span id="189">189</span>
192+
<span id="190">190</span>
193+
<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>
206+
<span id="204">204</span>
207+
<span id="205">205</span>
208+
<span id="206">206</span>
209+
<span id="207">207</span>
210+
<span id="208">208</span>
189211
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.</span>
190212
<span class="comment">// *</span>
191213
<span class="comment">// * (c) Nicholas Juszczak &lt;juszczakn@gmail.com&gt;</span>
@@ -199,10 +221,11 @@
199221
<span class="kw">extern</span> <span class="kw">crate</span> <span class="ident">uucore</span>;
200222

201223
<span class="kw">use</span> <span class="ident">clap</span>::{<span class="ident">crate_version</span>, <span class="ident">App</span>, <span class="ident">AppSettings</span>, <span class="ident">Arg</span>, <span class="ident">ArgMatches</span>, <span class="ident">OsValues</span>};
202-
<span class="kw">use</span> <span class="ident">std::fs</span>;
203224
<span class="kw">use</span> <span class="ident">std::path::Path</span>;
204225
<span class="kw">use</span> <span class="ident">uucore::display::Quotable</span>;
205-
<span class="kw">use</span> <span class="ident">uucore::error</span>::{<span class="ident">FromIo</span>, <span class="ident">UResult</span>, <span class="ident">USimpleError</span>};
226+
<span class="attribute">#[<span class="ident">cfg</span>(<span class="ident">not</span>(<span class="ident">windows</span>))]</span>
227+
<span class="kw">use</span> <span class="ident">uucore::error::FromIo</span>;
228+
<span class="kw">use</span> <span class="ident">uucore::error</span>::{<span class="ident">UResult</span>, <span class="ident">USimpleError</span>};
206229
<span class="attribute">#[<span class="ident">cfg</span>(<span class="ident">not</span>(<span class="ident">windows</span>))]</span>
207230
<span class="kw">use</span> <span class="ident">uucore::mode</span>;
208231
<span class="kw">use</span> <span class="ident">uucore</span>::{<span class="ident">format_usage</span>, <span class="ident">InvalidEncodingHandling</span>};
@@ -337,22 +360,7 @@
337360
}
338361

339362
<span class="kw">fn</span> <span class="ident">mkdir</span>(<span class="ident">path</span>: <span class="kw-2">&amp;</span><span class="ident">Path</span>, <span class="ident">recursive</span>: <span class="ident">bool</span>, <span class="ident">mode</span>: <span class="ident">u32</span>, <span class="ident">verbose</span>: <span class="ident">bool</span>) -&gt; <span class="ident">UResult</span><span class="op">&lt;</span>()<span class="op">&gt;</span> {
340-
<span class="kw">let</span> <span class="ident">create_dir</span> <span class="op">=</span> <span class="kw">if</span> <span class="ident">recursive</span> {
341-
<span class="ident">fs::create_dir_all</span>
342-
} <span class="kw">else</span> {
343-
<span class="ident">fs::create_dir</span>
344-
};
345-
346-
<span class="ident">create_dir</span>(<span class="ident">path</span>).<span class="ident">map_err_context</span>(<span class="op">|</span><span class="op">|</span> <span class="macro">format!</span>(<span class="string">&quot;cannot create directory {}&quot;</span>, <span class="ident">path</span>.<span class="ident">quote</span>()))<span class="question-mark">?</span>;
347-
348-
<span class="kw">if</span> <span class="ident">verbose</span> {
349-
<span class="macro">println!</span>(
350-
<span class="string">&quot;{}: created directory {}&quot;</span>,
351-
<span class="ident">uucore::util_name</span>(),
352-
<span class="ident">path</span>.<span class="ident">quote</span>()
353-
);
354-
}
355-
363+
<span class="ident">create_dir</span>(<span class="ident">path</span>, <span class="ident">recursive</span>, <span class="ident">verbose</span>)<span class="question-mark">?</span>;
356364
<span class="ident">chmod</span>(<span class="ident">path</span>, <span class="ident">mode</span>)
357365
}
358366

@@ -372,6 +380,42 @@
372380
<span class="comment">// chmod on Windows only sets the readonly flag, which isn&#39;t even honored on directories</span>
373381
<span class="prelude-val">Ok</span>(())
374382
}
383+
384+
<span class="kw">fn</span> <span class="ident">create_dir</span>(<span class="ident">path</span>: <span class="kw-2">&amp;</span><span class="ident">Path</span>, <span class="ident">recursive</span>: <span class="ident">bool</span>, <span class="ident">verbose</span>: <span class="ident">bool</span>) -&gt; <span class="ident">UResult</span><span class="op">&lt;</span>()<span class="op">&gt;</span> {
385+
<span class="kw">if</span> <span class="ident">path</span>.<span class="ident">exists</span>() <span class="op">&amp;&amp;</span> <span class="op">!</span><span class="ident">recursive</span> {
386+
<span class="kw">return</span> <span class="prelude-val">Err</span>(<span class="ident">USimpleError::new</span>(
387+
<span class="number">1</span>,
388+
<span class="macro">format!</span>(<span class="string">&quot;{}: File exists&quot;</span>, <span class="ident">path</span>.<span class="ident">display</span>()),
389+
));
390+
}
391+
<span class="kw">if</span> <span class="ident">path</span> <span class="op">==</span> <span class="ident">Path::new</span>(<span class="string">&quot;&quot;</span>) {
392+
<span class="kw">return</span> <span class="prelude-val">Ok</span>(());
393+
}
394+
395+
<span class="kw">if</span> <span class="ident">recursive</span> {
396+
<span class="kw">match</span> <span class="ident">path</span>.<span class="ident">parent</span>() {
397+
<span class="prelude-val">Some</span>(<span class="ident">p</span>) =&gt; <span class="ident">create_dir</span>(<span class="ident">p</span>, <span class="ident">recursive</span>, <span class="ident">verbose</span>)<span class="question-mark">?</span>,
398+
<span class="prelude-val">None</span> =&gt; {
399+
<span class="ident">USimpleError::new</span>(<span class="number">1</span>, <span class="string">&quot;failed to create whole tree&quot;</span>);
400+
}
401+
}
402+
}
403+
404+
<span class="kw">match</span> <span class="ident">std::fs::create_dir</span>(<span class="ident">path</span>) {
405+
<span class="prelude-val">Ok</span>(()) =&gt; {
406+
<span class="kw">if</span> <span class="ident">verbose</span> {
407+
<span class="macro">println!</span>(
408+
<span class="string">&quot;{}: created directory {}&quot;</span>,
409+
<span class="ident">uucore::util_name</span>(),
410+
<span class="ident">path</span>.<span class="ident">quote</span>()
411+
);
412+
}
413+
<span class="prelude-val">Ok</span>(())
414+
}
415+
<span class="prelude-val">Err</span>(<span class="kw">_</span>) <span class="kw">if</span> <span class="ident">path</span>.<span class="ident">is_dir</span>() =&gt; <span class="prelude-val">Ok</span>(()),
416+
<span class="prelude-val">Err</span>(<span class="ident">e</span>) =&gt; <span class="prelude-val">Err</span>(<span class="ident">e</span>.<span class="ident">into</span>()),
417+
}
418+
}
375419
</code></pre></div>
376420
</section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="uu_mkdir" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.59.0 (9d1b2106e 2022-02-23)" ></div>
377421
</body></html>

dev/src/uu_timeout/timeout.rs.html

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,9 @@
271271
<span id="269">269</span>
272272
<span id="270">270</span>
273273
<span id="271">271</span>
274+
<span id="272">272</span>
275+
<span id="273">273</span>
276+
<span id="274">274</span>
274277
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.</span>
275278
<span class="comment">// *</span>
276279
<span class="comment">// * (c) Alex Lyon &lt;arcterus@mail.com&gt;</span>
@@ -324,7 +327,7 @@
324327
}
325328

326329
<span class="kw">impl</span> <span class="ident">Config</span> {
327-
<span class="kw">fn</span> <span class="ident">from</span>(<span class="ident">options</span>: <span class="kw-2">&amp;</span><span class="ident">clap::ArgMatches</span>) -&gt; <span class="self">Self</span> {
330+
<span class="kw">fn</span> <span class="ident">from</span>(<span class="ident">options</span>: <span class="kw-2">&amp;</span><span class="ident">clap::ArgMatches</span>) -&gt; <span class="ident">UResult</span><span class="op">&lt;</span><span class="self">Self</span><span class="op">&gt;</span> {
328331
<span class="kw">let</span> <span class="ident">signal</span> <span class="op">=</span> <span class="kw">match</span> <span class="ident">options</span>.<span class="ident">value_of</span>(<span class="ident">options::SIGNAL</span>) {
329332
<span class="prelude-val">Some</span>(<span class="ident">signal_</span>) =&gt; {
330333
<span class="kw">let</span> <span class="ident">signal_result</span> <span class="op">=</span> <span class="ident">signal_by_name_or_value</span>(<span class="ident">signal_</span>);
@@ -342,8 +345,11 @@
342345
.<span class="ident">value_of</span>(<span class="ident">options::KILL_AFTER</span>)
343346
.<span class="ident">map</span>(<span class="op">|</span><span class="ident">time</span><span class="op">|</span> <span class="ident">uucore::parse_time::from_str</span>(<span class="ident">time</span>).<span class="ident">unwrap</span>());
344347

345-
<span class="kw">let</span> <span class="ident">duration</span>: <span class="ident">Duration</span> <span class="op">=</span>
346-
<span class="ident">uucore::parse_time::from_str</span>(<span class="ident">options</span>.<span class="ident">value_of</span>(<span class="ident">options::DURATION</span>).<span class="ident">unwrap</span>()).<span class="ident">unwrap</span>();
348+
<span class="kw">let</span> <span class="ident">duration</span> <span class="op">=</span>
349+
<span class="kw">match</span> <span class="ident">uucore::parse_time::from_str</span>(<span class="ident">options</span>.<span class="ident">value_of</span>(<span class="ident">options::DURATION</span>).<span class="ident">unwrap</span>()) {
350+
<span class="prelude-val">Ok</span>(<span class="ident">duration</span>) =&gt; <span class="ident">duration</span>,
351+
<span class="prelude-val">Err</span>(<span class="ident">err</span>) =&gt; <span class="kw">return</span> <span class="prelude-val">Err</span>(<span class="ident">USimpleError::new</span>(<span class="number">1</span>, <span class="ident">err</span>)),
352+
};
347353

348354
<span class="kw">let</span> <span class="ident">preserve_status</span>: <span class="ident">bool</span> <span class="op">=</span> <span class="ident">options</span>.<span class="ident">is_present</span>(<span class="ident">options::PRESERVE_STATUS</span>);
349355
<span class="kw">let</span> <span class="ident">foreground</span> <span class="op">=</span> <span class="ident">options</span>.<span class="ident">is_present</span>(<span class="ident">options::FOREGROUND</span>);
@@ -355,15 +361,15 @@
355361
.<span class="ident">map</span>(<span class="ident">String::from</span>)
356362
.<span class="ident">collect</span>::<span class="op">&lt;</span><span class="ident">Vec</span><span class="op">&lt;</span><span class="kw">_</span><span class="op">&gt;</span><span class="op">&gt;</span>();
357363

358-
<span class="self">Self</span> {
364+
<span class="prelude-val">Ok</span>(<span class="self">Self</span> {
359365
<span class="ident">foreground</span>,
360366
<span class="ident">kill_after</span>,
361367
<span class="ident">signal</span>,
362368
<span class="ident">duration</span>,
363369
<span class="ident">preserve_status</span>,
364370
<span class="ident">verbose</span>,
365371
<span class="ident">command</span>,
366-
}
372+
})
367373
}
368374
}
369375

@@ -377,7 +383,7 @@
377383

378384
<span class="kw">let</span> <span class="ident">matches</span> <span class="op">=</span> <span class="ident">app</span>.<span class="ident">get_matches_from</span>(<span class="ident">args</span>);
379385

380-
<span class="kw">let</span> <span class="ident">config</span> <span class="op">=</span> <span class="ident">Config::from</span>(<span class="kw-2">&amp;</span><span class="ident">matches</span>);
386+
<span class="kw">let</span> <span class="ident">config</span> <span class="op">=</span> <span class="ident">Config::from</span>(<span class="kw-2">&amp;</span><span class="ident">matches</span>)<span class="question-mark">?</span>;
381387
<span class="ident">timeout</span>(
382388
<span class="kw-2">&amp;</span><span class="ident">config</span>.<span class="ident">command</span>,
383389
<span class="ident">config</span>.<span class="ident">duration</span>,

0 commit comments

Comments
 (0)