Skip to content

Commit c0a3fc7

Browse files
committed
deploy: c249eba
1 parent a30949a commit c0a3fc7

File tree

1 file changed

+13
-33
lines changed

1 file changed

+13
-33
lines changed

dev/src/uu_dd/blocks.rs.html

+13-33
Original file line numberDiff line numberDiff line change
@@ -378,16 +378,6 @@
378378
<span id="372">372</span>
379379
<span id="373">373</span>
380380
<span id="374">374</span>
381-
<span id="375">375</span>
382-
<span id="376">376</span>
383-
<span id="377">377</span>
384-
<span id="378">378</span>
385-
<span id="379">379</span>
386-
<span id="380">380</span>
387-
<span id="381">381</span>
388-
<span id="382">382</span>
389-
<span id="383">383</span>
390-
<span id="384">384</span>
391381
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.</span>
392382
<span class="comment">// *</span>
393383
<span class="comment">// * For the full copyright and license information, please view the LICENSE</span>
@@ -468,34 +458,25 @@
468458
<span class="doccomment">/// settings of `mode`, this function will update the number of</span>
469459
<span class="doccomment">/// records truncated; that&#39;s why `rstat` is borrowed mutably.</span>
470460
<span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn</span> <span class="ident">conv_block_unblock_helper</span>(
471-
<span class="kw-2">mut</span> <span class="ident">buf</span>: <span class="ident">Vec</span><span class="op">&lt;</span><span class="ident">u8</span><span class="op">&gt;</span>,
461+
<span class="ident">buf</span>: <span class="ident">Vec</span><span class="op">&lt;</span><span class="ident">u8</span><span class="op">&gt;</span>,
472462
<span class="ident">mode</span>: <span class="kw-2">&amp;</span><span class="ident">ConversionMode</span>,
473463
<span class="ident">rstat</span>: <span class="kw-2">&amp;mut</span> <span class="ident">ReadStat</span>,
474464
) -&gt; <span class="ident">Vec</span><span class="op">&lt;</span><span class="ident">u8</span><span class="op">&gt;</span> {
475-
<span class="comment">// TODO This function has a mutable input `buf` but also returns a</span>
476-
<span class="comment">// completely new `Vec`; that seems fishy. Could we either make</span>
477-
<span class="comment">// the input immutable or make the function not return anything?</span>
478-
479-
<span class="kw">fn</span> <span class="ident">apply_conversion</span>(<span class="ident">buf</span>: <span class="kw-2">&amp;mut</span> [<span class="ident">u8</span>], <span class="ident">ct</span>: <span class="kw-2">&amp;</span><span class="ident">ConversionTable</span>) {
480-
<span class="kw">for</span> <span class="ident">idx</span> <span class="kw">in</span> <span class="number">0</span>..<span class="ident">buf</span>.<span class="ident">len</span>() {
481-
<span class="ident">buf</span>[<span class="ident">idx</span>] <span class="op">=</span> <span class="ident">ct</span>[<span class="ident">buf</span>[<span class="ident">idx</span>] <span class="kw">as</span> <span class="ident">usize</span>];
482-
}
465+
<span class="kw">fn</span> <span class="ident">apply_conversion</span>(<span class="ident">buf</span>: <span class="ident">Vec</span><span class="op">&lt;</span><span class="ident">u8</span><span class="op">&gt;</span>, <span class="ident">ct</span>: <span class="kw-2">&amp;</span><span class="ident">ConversionTable</span>) -&gt; <span class="kw">impl</span> <span class="ident">Iterator</span><span class="op">&lt;</span><span class="ident">Item</span> <span class="op">=</span> <span class="ident">u8</span><span class="op">&gt;</span> <span class="op">+</span> <span class="lifetime">&#39;_</span> {
466+
<span class="ident">buf</span>.<span class="ident">into_iter</span>().<span class="ident">map</span>(<span class="op">|</span><span class="ident">b</span><span class="op">|</span> <span class="ident">ct</span>[<span class="ident">b</span> <span class="kw">as</span> <span class="ident">usize</span>])
483467
}
484468

485469
<span class="kw">match</span> <span class="ident">mode</span> {
486-
<span class="ident">ConversionMode::ConvertOnly</span>(<span class="ident">ct</span>) =&gt; {
487-
<span class="ident">apply_conversion</span>(<span class="kw-2">&amp;mut</span> <span class="ident">buf</span>, <span class="ident">ct</span>);
488-
<span class="ident">buf</span>
489-
}
470+
<span class="ident">ConversionMode::ConvertOnly</span>(<span class="ident">ct</span>) =&gt; <span class="ident">apply_conversion</span>(<span class="ident">buf</span>, <span class="ident">ct</span>).<span class="ident">collect</span>(),
490471
<span class="ident">ConversionMode::BlockThenConvert</span>(<span class="ident">ct</span>, <span class="ident">cbs</span>, <span class="ident">sync</span>) =&gt; {
491-
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">blocks</span> <span class="op">=</span> <span class="ident">block</span>(<span class="kw-2">&amp;</span><span class="ident">buf</span>, <span class="kw-2">*</span><span class="ident">cbs</span>, <span class="kw-2">*</span><span class="ident">sync</span>, <span class="ident">rstat</span>);
492-
<span class="kw">for</span> <span class="ident">buf</span> <span class="kw">in</span> <span class="kw-2">&amp;mut</span> <span class="ident">blocks</span> {
493-
<span class="ident">apply_conversion</span>(<span class="ident">buf</span>, <span class="ident">ct</span>);
494-
}
495-
<span class="ident">blocks</span>.<span class="ident">into_iter</span>().<span class="ident">flatten</span>().<span class="ident">collect</span>()
472+
<span class="kw">let</span> <span class="ident">blocks</span> <span class="op">=</span> <span class="ident">block</span>(<span class="kw-2">&amp;</span><span class="ident">buf</span>, <span class="kw-2">*</span><span class="ident">cbs</span>, <span class="kw-2">*</span><span class="ident">sync</span>, <span class="ident">rstat</span>);
473+
<span class="ident">blocks</span>
474+
.<span class="ident">into_iter</span>()
475+
.<span class="ident">flat_map</span>(<span class="op">|</span><span class="ident">block</span><span class="op">|</span> <span class="ident">apply_conversion</span>(<span class="ident">block</span>, <span class="ident">ct</span>))
476+
.<span class="ident">collect</span>()
496477
}
497478
<span class="ident">ConversionMode::ConvertThenBlock</span>(<span class="ident">ct</span>, <span class="ident">cbs</span>, <span class="ident">sync</span>) =&gt; {
498-
<span class="ident">apply_conversion</span>(<span class="kw-2">&amp;mut</span> <span class="ident">buf</span>, <span class="ident">ct</span>);
479+
<span class="kw">let</span> <span class="ident">buf</span>: <span class="ident">Vec</span><span class="op">&lt;</span><span class="kw">_</span><span class="op">&gt;</span> <span class="op">=</span> <span class="ident">apply_conversion</span>(<span class="ident">buf</span>, <span class="ident">ct</span>).<span class="ident">collect</span>();
499480
<span class="ident">block</span>(<span class="kw-2">&amp;</span><span class="ident">buf</span>, <span class="kw-2">*</span><span class="ident">cbs</span>, <span class="kw-2">*</span><span class="ident">sync</span>, <span class="ident">rstat</span>)
500481
.<span class="ident">into_iter</span>()
501482
.<span class="ident">flatten</span>()
@@ -506,12 +487,11 @@
506487
.<span class="ident">flatten</span>()
507488
.<span class="ident">collect</span>(),
508489
<span class="ident">ConversionMode::UnblockThenConvert</span>(<span class="ident">ct</span>, <span class="ident">cbs</span>) =&gt; {
509-
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="ident">unblock</span>(<span class="kw-2">&amp;</span><span class="ident">buf</span>, <span class="kw-2">*</span><span class="ident">cbs</span>);
510-
<span class="ident">apply_conversion</span>(<span class="kw-2">&amp;mut</span> <span class="ident">buf</span>, <span class="ident">ct</span>);
511-
<span class="ident">buf</span>
490+
<span class="kw">let</span> <span class="ident">buf</span> <span class="op">=</span> <span class="ident">unblock</span>(<span class="kw-2">&amp;</span><span class="ident">buf</span>, <span class="kw-2">*</span><span class="ident">cbs</span>);
491+
<span class="ident">apply_conversion</span>(<span class="ident">buf</span>, <span class="ident">ct</span>).<span class="ident">collect</span>()
512492
}
513493
<span class="ident">ConversionMode::ConvertThenUnblock</span>(<span class="ident">ct</span>, <span class="ident">cbs</span>) =&gt; {
514-
<span class="ident">apply_conversion</span>(<span class="kw-2">&amp;mut</span> <span class="ident">buf</span>, <span class="ident">ct</span>);
494+
<span class="kw">let</span> <span class="ident">buf</span>: <span class="ident">Vec</span><span class="op">&lt;</span><span class="kw">_</span><span class="op">&gt;</span> <span class="op">=</span> <span class="ident">apply_conversion</span>(<span class="ident">buf</span>, <span class="ident">ct</span>).<span class="ident">collect</span>();
515495
<span class="ident">unblock</span>(<span class="kw-2">&amp;</span><span class="ident">buf</span>, <span class="kw-2">*</span><span class="ident">cbs</span>)
516496
}
517497
<span class="ident">ConversionMode::UnblockOnly</span>(<span class="ident">cbs</span>) =&gt; <span class="ident">unblock</span>(<span class="kw-2">&amp;</span><span class="ident">buf</span>, <span class="kw-2">*</span><span class="ident">cbs</span>),

0 commit comments

Comments
 (0)