Skip to content

Commit 237647a

Browse files
committed
deploy: 055173b
1 parent 5c3f82b commit 237647a

File tree

9 files changed

+80
-26
lines changed

9 files changed

+80
-26
lines changed

dev/src/uu_df/df.rs.html

Lines changed: 52 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -740,6 +740,23 @@
740740
<span id="738">738</span>
741741
<span id="739">739</span>
742742
<span id="740">740</span>
743+
<span id="741">741</span>
744+
<span id="742">742</span>
745+
<span id="743">743</span>
746+
<span id="744">744</span>
747+
<span id="745">745</span>
748+
<span id="746">746</span>
749+
<span id="747">747</span>
750+
<span id="748">748</span>
751+
<span id="749">749</span>
752+
<span id="750">750</span>
753+
<span id="751">751</span>
754+
<span id="752">752</span>
755+
<span id="753">753</span>
756+
<span id="754">754</span>
757+
<span id="755">755</span>
758+
<span id="756">756</span>
759+
<span id="757">757</span>
743760
</pre><pre class="rust"><code><span class="comment">// This file is part of the uutils coreutils package.</span>
744761
<span class="comment">//</span>
745762
<span class="comment">// (c) Fangxu Hu &lt;framlog@gmail.com&gt;</span>
@@ -853,6 +870,8 @@
853870

854871
<span class="doccomment">/// An error getting the columns to display in the output table.</span>
855872
<span class="ident">ColumnError</span>(<span class="ident">ColumnError</span>),
873+
874+
<span class="ident">FilesystemTypeBothSelectedAndExcluded</span>(<span class="ident">Vec</span><span class="op">&lt;</span><span class="ident">String</span><span class="op">&gt;</span>),
856875
}
857876

858877
<span class="kw">impl</span> <span class="ident">fmt::Display</span> <span class="kw">for</span> <span class="ident">OptionsError</span> {
@@ -868,25 +887,56 @@
868887
<span class="string">&quot;option --output: field {} used more than once&quot;</span>,
869888
<span class="ident">s</span>.<span class="ident">quote</span>()
870889
),
890+
<span class="ident"><span class="self">Self</span>::FilesystemTypeBothSelectedAndExcluded</span>(<span class="ident">types</span>) =&gt; {
891+
<span class="kw">for</span> <span class="ident">t</span> <span class="kw">in</span> <span class="ident">types</span> {
892+
<span class="macro">eprintln!</span>(
893+
<span class="string">&quot;{}: file system type {} both selected and excluded&quot;</span>,
894+
<span class="ident">uucore::util_name</span>(),
895+
<span class="ident">t</span>.<span class="ident">quote</span>()
896+
);
897+
}
898+
<span class="prelude-val">Ok</span>(())
899+
}
871900
}
872901
}
873902
}
874903

875904
<span class="kw">impl</span> <span class="ident">Options</span> {
876905
<span class="doccomment">/// Convert command-line arguments into [`Options`].</span>
877906
<span class="kw">fn</span> <span class="ident">from</span>(<span class="ident">matches</span>: <span class="kw-2">&amp;</span><span class="ident">ArgMatches</span>) -&gt; <span class="prelude-ty">Result</span><span class="op">&lt;</span><span class="self">Self</span>, <span class="ident">OptionsError</span><span class="op">&gt;</span> {
907+
<span class="kw">let</span> <span class="ident">include</span> <span class="op">=</span> <span class="ident">matches</span>.<span class="ident">values_of_lossy</span>(<span class="ident">OPT_TYPE</span>);
908+
<span class="kw">let</span> <span class="ident">exclude</span> <span class="op">=</span> <span class="ident">matches</span>.<span class="ident">values_of_lossy</span>(<span class="ident">OPT_EXCLUDE_TYPE</span>);
909+
910+
<span class="kw">if</span> <span class="kw">let</span> (<span class="prelude-val">Some</span>(<span class="ident">include</span>), <span class="prelude-val">Some</span>(<span class="ident">exclude</span>)) <span class="op">=</span> (<span class="kw-2">&amp;</span><span class="ident">include</span>, <span class="kw-2">&amp;</span><span class="ident">exclude</span>) {
911+
<span class="kw">if</span> <span class="kw">let</span> <span class="prelude-val">Some</span>(<span class="ident">types</span>) <span class="op">=</span> <span class="ident"><span class="self">Self</span>::get_intersected_types</span>(<span class="ident">include</span>, <span class="ident">exclude</span>) {
912+
<span class="kw">return</span> <span class="prelude-val">Err</span>(<span class="ident">OptionsError::FilesystemTypeBothSelectedAndExcluded</span>(<span class="ident">types</span>));
913+
}
914+
}
915+
878916
<span class="prelude-val">Ok</span>(<span class="self">Self</span> {
879917
<span class="ident">show_local_fs</span>: <span class="ident">matches</span>.<span class="ident">is_present</span>(<span class="ident">OPT_LOCAL</span>),
880918
<span class="ident">show_all_fs</span>: <span class="ident">matches</span>.<span class="ident">is_present</span>(<span class="ident">OPT_ALL</span>),
881919
<span class="ident">show_listed_fs</span>: <span class="bool-val">false</span>,
882920
<span class="ident">block_size</span>: <span class="ident">block_size_from_matches</span>(<span class="ident">matches</span>)
883921
.<span class="ident">map_err</span>(<span class="op">|</span><span class="kw">_</span><span class="op">|</span> <span class="ident">OptionsError::InvalidBlockSize</span>)<span class="question-mark">?</span>,
884-
<span class="ident">include</span>: <span class="ident">matches</span>.<span class="ident">values_of_lossy</span>(<span class="ident">OPT_TYPE</span>),
885-
<span class="ident">exclude</span>: <span class="ident">matches</span>.<span class="ident">values_of_lossy</span>(<span class="ident">OPT_EXCLUDE_TYPE</span>),
922+
<span class="ident">include</span>,
923+
<span class="ident">exclude</span>,
886924
<span class="ident">show_total</span>: <span class="ident">matches</span>.<span class="ident">is_present</span>(<span class="ident">OPT_TOTAL</span>),
887925
<span class="ident">columns</span>: <span class="ident">Column::from_matches</span>(<span class="ident">matches</span>).<span class="ident">map_err</span>(<span class="ident">OptionsError::ColumnError</span>)<span class="question-mark">?</span>,
888926
})
889927
}
928+
929+
<span class="kw">fn</span> <span class="ident">get_intersected_types</span>(<span class="ident">include</span>: <span class="kw-2">&amp;</span>[<span class="ident">String</span>], <span class="ident">exclude</span>: <span class="kw-2">&amp;</span>[<span class="ident">String</span>]) -&gt; <span class="prelude-ty">Option</span><span class="op">&lt;</span><span class="ident">Vec</span><span class="op">&lt;</span><span class="ident">String</span><span class="op">&gt;</span><span class="op">&gt;</span> {
930+
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">intersected_types</span> <span class="op">=</span> <span class="ident">Vec::new</span>();
931+
932+
<span class="kw">for</span> <span class="ident">t</span> <span class="kw">in</span> <span class="ident">include</span> {
933+
<span class="kw">if</span> <span class="ident">exclude</span>.<span class="ident">contains</span>(<span class="ident">t</span>) {
934+
<span class="ident">intersected_types</span>.<span class="ident">push</span>(<span class="ident">t</span>.<span class="ident">clone</span>());
935+
}
936+
}
937+
938+
(<span class="op">!</span><span class="ident">intersected_types</span>.<span class="ident">is_empty</span>()).<span class="ident">then</span>(<span class="op">|</span><span class="op">|</span> <span class="ident">intersected_types</span>)
939+
}
890940
}
891941

892942
<span class="doccomment">/// Whether to display the mount info given the inclusion settings.</span>
@@ -1450,22 +1500,6 @@
14501500
<span class="kw">let</span> <span class="ident">m</span> <span class="op">=</span> <span class="ident">mount_info</span>(<span class="string">&quot;ext4&quot;</span>, <span class="string">&quot;/mnt/foo&quot;</span>, <span class="bool-val">false</span>, <span class="bool-val">false</span>);
14511501
<span class="macro">assert!</span>(<span class="ident">is_included</span>(<span class="kw-2">&amp;</span><span class="ident">m</span>, <span class="kw-2">&amp;</span><span class="ident">opt</span>));
14521502
}
1453-
1454-
<span class="attribute">#[<span class="ident">test</span>]</span>
1455-
<span class="kw">fn</span> <span class="ident">test_include_and_exclude_match_both</span>() {
1456-
<span class="comment">// TODO The same filesystem type in both `include` and</span>
1457-
<span class="comment">// `exclude` should cause an error, but currently does</span>
1458-
<span class="comment">// not.</span>
1459-
<span class="kw">let</span> <span class="ident">include</span> <span class="op">=</span> <span class="prelude-val">Some</span>(<span class="macro">vec!</span>[<span class="ident">String::from</span>(<span class="string">&quot;ext4&quot;</span>)]);
1460-
<span class="kw">let</span> <span class="ident">exclude</span> <span class="op">=</span> <span class="prelude-val">Some</span>(<span class="macro">vec!</span>[<span class="ident">String::from</span>(<span class="string">&quot;ext4&quot;</span>)]);
1461-
<span class="kw">let</span> <span class="ident">opt</span> <span class="op">=</span> <span class="ident">Options</span> {
1462-
<span class="ident">include</span>,
1463-
<span class="ident">exclude</span>,
1464-
..<span class="ident">Default::default</span>()
1465-
};
1466-
<span class="kw">let</span> <span class="ident">m</span> <span class="op">=</span> <span class="ident">mount_info</span>(<span class="string">&quot;ext4&quot;</span>, <span class="string">&quot;/mnt/foo&quot;</span>, <span class="bool-val">false</span>, <span class="bool-val">false</span>);
1467-
<span class="macro">assert!</span>(<span class="op">!</span><span class="ident">is_included</span>(<span class="kw-2">&amp;</span><span class="ident">m</span>, <span class="kw-2">&amp;</span><span class="ident">opt</span>));
1468-
}
14691503
}
14701504

14711505
<span class="kw">mod</span> <span class="ident">filter_mount_list</span> {

dev/src/uu_hashsum/hashsum.rs.html

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -657,6 +657,16 @@
657657
<span id="655">655</span>
658658
<span id="656">656</span>
659659
<span id="657">657</span>
660+
<span id="658">658</span>
661+
<span id="659">659</span>
662+
<span id="660">660</span>
663+
<span id="661">661</span>
664+
<span id="662">662</span>
665+
<span id="663">663</span>
666+
<span id="664">664</span>
667+
<span id="665">665</span>
668+
<span id="666">666</span>
669+
<span id="667">667</span>
660670
</pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.</span>
661671
<span class="comment">// *</span>
662672
<span class="comment">// * (c) Alex Lyon &lt;arcterus@mail.com&gt;</span>
@@ -666,7 +676,7 @@
666676
<span class="comment">// * For the full copyright and license information, please view the LICENSE</span>
667677
<span class="comment">// * file that was distributed with this source code.</span>
668678

669-
<span class="comment">// spell-checker:ignore (ToDO) algo, algoname, regexes, nread</span>
679+
<span class="comment">// spell-checker:ignore (ToDO) algo, algoname, regexes, nread, nonames</span>
670680

671681
<span class="attribute">#[<span class="ident">macro_use</span>]</span>
672682
<span class="kw">extern</span> <span class="kw">crate</span> <span class="ident">clap</span>;
@@ -705,6 +715,7 @@
705715
<span class="ident">binary</span>: <span class="ident">bool</span>,
706716
<span class="ident">check</span>: <span class="ident">bool</span>,
707717
<span class="ident">tag</span>: <span class="ident">bool</span>,
718+
<span class="ident">nonames</span>: <span class="ident">bool</span>,
708719
<span class="ident">status</span>: <span class="ident">bool</span>,
709720
<span class="ident">quiet</span>: <span class="ident">bool</span>,
710721
<span class="ident">strict</span>: <span class="ident">bool</span>,
@@ -975,6 +986,7 @@
975986
};
976987
<span class="kw">let</span> <span class="ident">check</span> <span class="op">=</span> <span class="ident">matches</span>.<span class="ident">is_present</span>(<span class="string">&quot;check&quot;</span>);
977988
<span class="kw">let</span> <span class="ident">tag</span> <span class="op">=</span> <span class="ident">matches</span>.<span class="ident">is_present</span>(<span class="string">&quot;tag&quot;</span>);
989+
<span class="kw">let</span> <span class="ident">nonames</span> <span class="op">=</span> <span class="ident">matches</span>.<span class="ident">is_present</span>(<span class="string">&quot;no-names&quot;</span>);
978990
<span class="kw">let</span> <span class="ident">status</span> <span class="op">=</span> <span class="ident">matches</span>.<span class="ident">is_present</span>(<span class="string">&quot;status&quot;</span>);
979991
<span class="kw">let</span> <span class="ident">quiet</span> <span class="op">=</span> <span class="ident">matches</span>.<span class="ident">is_present</span>(<span class="string">&quot;quiet&quot;</span>) <span class="op">|</span><span class="op">|</span> <span class="ident">status</span>;
980992
<span class="kw">let</span> <span class="ident">strict</span> <span class="op">=</span> <span class="ident">matches</span>.<span class="ident">is_present</span>(<span class="string">&quot;strict&quot;</span>);
@@ -987,6 +999,7 @@
987999
<span class="ident">binary</span>,
9881000
<span class="ident">check</span>,
9891001
<span class="ident">tag</span>,
1002+
<span class="ident">nonames</span>,
9901003
<span class="ident">status</span>,
9911004
<span class="ident">quiet</span>,
9921005
<span class="ident">strict</span>,
@@ -1029,6 +1042,11 @@
10291042
.<span class="ident">long</span>(<span class="string">&quot;tag&quot;</span>)
10301043
.<span class="ident">help</span>(<span class="string">&quot;create a BSD-style checksum&quot;</span>),
10311044
)
1045+
.<span class="ident">arg</span>(
1046+
<span class="ident">Arg::new</span>(<span class="string">&quot;no-names&quot;</span>)
1047+
.<span class="ident">long</span>(<span class="string">&quot;no-names&quot;</span>)
1048+
.<span class="ident">help</span>(<span class="string">&quot;Omits filenames in the output (option not present in GNU/Coreutils)&quot;</span>),
1049+
)
10321050
.<span class="ident">arg</span>(
10331051
<span class="ident">Arg::new</span>(<span class="string">&quot;text&quot;</span>)
10341052
.<span class="ident">short</span>(<span class="string">&#39;t&#39;</span>)
@@ -1261,6 +1279,8 @@
12611279
.<span class="ident">map_err_context</span>(<span class="op">|</span><span class="op">|</span> <span class="string">&quot;failed to read input&quot;</span>.<span class="ident">to_string</span>())<span class="question-mark">?</span>;
12621280
<span class="kw">if</span> <span class="ident">options</span>.<span class="ident">tag</span> {
12631281
<span class="macro">println!</span>(<span class="string">&quot;{} ({}) = {}&quot;</span>, <span class="ident">options</span>.<span class="ident">algoname</span>, <span class="ident">filename</span>.<span class="ident">display</span>(), <span class="ident">sum</span>);
1282+
} <span class="kw">else</span> <span class="kw">if</span> <span class="ident">options</span>.<span class="ident">nonames</span> {
1283+
<span class="macro">println!</span>(<span class="string">&quot;{}&quot;</span>, <span class="ident">sum</span>);
12641284
} <span class="kw">else</span> {
12651285
<span class="macro">println!</span>(<span class="string">&quot;{} {}{}&quot;</span>, <span class="ident">sum</span>, <span class="ident">binary_marker</span>, <span class="ident">filename</span>.<span class="ident">display</span>());
12661286
}

0 commit comments

Comments
 (0)