|
547 | 547 | <span id="545">545</span>
|
548 | 548 | <span id="546">546</span>
|
549 | 549 | <span id="547">547</span>
|
| 550 | +<span id="548">548</span> |
| 551 | +<span id="549">549</span> |
| 552 | +<span id="550">550</span> |
| 553 | +<span id="551">551</span> |
| 554 | +<span id="552">552</span> |
| 555 | +<span id="553">553</span> |
550 | 556 | </pre><pre class="rust"><code><span class="comment">// * This file is part of the uutils coreutils package.</span>
|
551 | 557 | <span class="comment">// *</span>
|
552 | 558 | <span class="comment">// * For the full copyright and license information, please view the LICENSE</span>
|
|
826 | 832 | <span class="ident">separated_pair</span>(<span class="ident"><span class="self">Self</span>::parse_backslash_or_char</span>, <span class="ident">tag</span>(<span class="string">"*"</span>), <span class="ident">digit1</span>),
|
827 | 833 | <span class="ident">tag</span>(<span class="string">"]"</span>),
|
828 | 834 | )(<span class="ident">input</span>)
|
829 |
| - .<span class="ident">map</span>(<span class="op">|</span>(<span class="ident">l</span>, (<span class="ident">c</span>, <span class="ident">str</span>))<span class="op">|</span> { |
830 |
| - ( |
831 |
| - <span class="ident">l</span>, |
832 |
| - <span class="kw">match</span> <span class="ident">usize::from_str_radix</span>(<span class="ident">str</span>, <span class="number">8</span>) { |
| 835 | + .<span class="ident">map</span>(<span class="op">|</span>(<span class="ident">l</span>, (<span class="ident">c</span>, <span class="ident">cnt_str</span>))<span class="op">|</span> { |
| 836 | + <span class="kw">let</span> <span class="ident">result</span> <span class="op">=</span> <span class="kw">if</span> <span class="ident">cnt_str</span>.<span class="ident">starts_with</span>(<span class="string">'0'</span>) { |
| 837 | + <span class="kw">match</span> <span class="ident">usize::from_str_radix</span>(<span class="ident">cnt_str</span>, <span class="number">8</span>) { |
833 | 838 | <span class="prelude-val">Ok</span>(<span class="number">0</span>) => <span class="prelude-val">Ok</span>(<span class="ident"><span class="self">Self</span>::CharStar</span>(<span class="ident">c</span>)),
|
834 | 839 | <span class="prelude-val">Ok</span>(<span class="ident">count</span>) => <span class="prelude-val">Ok</span>(<span class="ident"><span class="self">Self</span>::CharRepeat</span>(<span class="ident">c</span>, <span class="ident">count</span>)),
|
835 |
| - <span class="prelude-val">Err</span>(<span class="kw">_</span>) => <span class="prelude-val">Err</span>(<span class="ident">BadSequence::InvalidRepeatCount</span>(<span class="ident">str</span>.<span class="ident">to_string</span>())), |
836 |
| - }, |
837 |
| - ) |
| 840 | + <span class="prelude-val">Err</span>(<span class="kw">_</span>) => <span class="prelude-val">Err</span>(<span class="ident">BadSequence::InvalidRepeatCount</span>(<span class="ident">cnt_str</span>.<span class="ident">to_string</span>())), |
| 841 | + } |
| 842 | + } <span class="kw">else</span> { |
| 843 | + <span class="kw">match</span> <span class="ident">cnt_str</span>.<span class="ident">parse</span>::<span class="op"><</span><span class="ident">usize</span><span class="op">></span>() { |
| 844 | + <span class="prelude-val">Ok</span>(<span class="number">0</span>) => <span class="prelude-val">Ok</span>(<span class="ident"><span class="self">Self</span>::CharStar</span>(<span class="ident">c</span>)), |
| 845 | + <span class="prelude-val">Ok</span>(<span class="ident">count</span>) => <span class="prelude-val">Ok</span>(<span class="ident"><span class="self">Self</span>::CharRepeat</span>(<span class="ident">c</span>, <span class="ident">count</span>)), |
| 846 | + <span class="prelude-val">Err</span>(<span class="kw">_</span>) => <span class="prelude-val">Err</span>(<span class="ident">BadSequence::InvalidRepeatCount</span>(<span class="ident">cnt_str</span>.<span class="ident">to_string</span>())), |
| 847 | + } |
| 848 | + }; |
| 849 | + (<span class="ident">l</span>, <span class="ident">result</span>) |
838 | 850 | })
|
839 | 851 | }
|
840 | 852 |
|
|
0 commit comments