|
337 | 337 | <span id="337">337</span>
|
338 | 338 | <span id="338">338</span>
|
339 | 339 | <span id="339">339</span>
|
340 |
| -<span id="340">340</span> |
341 |
| -<span id="341">341</span> |
342 |
| -<span id="342">342</span> |
343 |
| -<span id="343">343</span> |
344 |
| -<span id="344">344</span> |
345 |
| -<span id="345">345</span> |
346 |
| -<span id="346">346</span> |
347 |
| -<span id="347">347</span> |
348 |
| -<span id="348">348</span> |
349 |
| -<span id="349">349</span> |
350 |
| -<span id="350">350</span> |
351 |
| -<span id="351">351</span> |
352 |
| -<span id="352">352</span> |
353 |
| -<span id="353">353</span> |
354 |
| -<span id="354">354</span> |
355 |
| -<span id="355">355</span> |
356 |
| -<span id="356">356</span> |
357 |
| -<span id="357">357</span> |
358 |
| -<span id="358">358</span> |
359 |
| -<span id="359">359</span> |
360 |
| -<span id="360">360</span> |
361 |
| -<span id="361">361</span> |
362 |
| -<span id="362">362</span> |
363 |
| -<span id="363">363</span> |
364 |
| -<span id="364">364</span> |
365 |
| -<span id="365">365</span> |
366 |
| -<span id="366">366</span> |
367 |
| -<span id="367">367</span> |
368 |
| -<span id="368">368</span> |
369 |
| -<span id="369">369</span> |
370 |
| -<span id="370">370</span> |
371 |
| -<span id="371">371</span> |
372 |
| -<span id="372">372</span> |
373 |
| -<span id="373">373</span> |
374 |
| -<span id="374">374</span> |
375 |
| -<span id="375">375</span> |
376 |
| -<span id="376">376</span> |
377 |
| -<span id="377">377</span> |
378 |
| -<span id="378">378</span> |
379 |
| -<span id="379">379</span> |
380 |
| -<span id="380">380</span> |
381 |
| -<span id="381">381</span> |
382 |
| -<span id="382">382</span> |
383 |
| -<span id="383">383</span> |
384 |
| -<span id="384">384</span> |
385 |
| -<span id="385">385</span> |
386 |
| -<span id="386">386</span> |
387 |
| -<span id="387">387</span> |
388 |
| -<span id="388">388</span> |
389 |
| -<span id="389">389</span> |
390 |
| -<span id="390">390</span> |
391 |
| -<span id="391">391</span> |
392 |
| -<span id="392">392</span> |
393 |
| -<span id="393">393</span> |
394 |
| -<span id="394">394</span> |
395 |
| -<span id="395">395</span> |
396 |
| -<span id="396">396</span> |
397 |
| -<span id="397">397</span> |
398 |
| -<span id="398">398</span> |
399 |
| -<span id="399">399</span> |
400 |
| -<span id="400">400</span> |
401 |
| -<span id="401">401</span> |
402 |
| -<span id="402">402</span> |
403 |
| -<span id="403">403</span> |
404 |
| -<span id="404">404</span> |
405 |
| -<span id="405">405</span> |
406 |
| -<span id="406">406</span> |
407 |
| -<span id="407">407</span> |
408 |
| -<span id="408">408</span> |
409 |
| -<span id="409">409</span> |
410 |
| -<span id="410">410</span> |
411 |
| -<span id="411">411</span> |
412 |
| -<span id="412">412</span> |
413 |
| -<span id="413">413</span> |
414 |
| -<span id="414">414</span> |
415 |
| -<span id="415">415</span> |
416 |
| -<span id="416">416</span> |
417 | 340 | </pre><pre class="rust"><code><span class="comment">// spell-checker:ignore (regex) diuox
|
418 | 341 |
|
419 | 342 | </span><span class="kw">use </span>regex::Regex;
|
|
471 | 394 | <span class="kw">let </span>all = captures.name(<span class="string">"ALL"</span>).unwrap();
|
472 | 395 | <span class="kw">let </span>before = custom[<span class="number">0</span>..all.start()].to_owned();
|
473 | 396 | <span class="kw">let </span>after = custom[all.end()..].to_owned();
|
474 |
| - <span class="kw">let </span>n_digits = <span class="kw">match </span>captures.name(<span class="string">"WIDTH"</span>) { |
| 397 | + <span class="kw">let </span>width = <span class="kw">match </span>captures.name(<span class="string">"WIDTH"</span>) { |
475 | 398 | <span class="prelude-val">None </span>=> <span class="number">0</span>,
|
476 | 399 | <span class="prelude-val">Some</span>(m) => m.as_str().parse::<usize>().unwrap(),
|
477 | 400 | };
|
|
498 | 421 | */
|
499 | 422 | // decimal
|
500 | 423 | </span>(<span class="string">"0"</span>, <span class="string">"d" </span>| <span class="string">"i" </span>| <span class="string">"u"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
501 |
| - <span class="macro">format!</span>( |
502 |
| - <span class="string">"{}{}{:0width$}{}"</span>, |
503 |
| - prefix, |
504 |
| - before, |
505 |
| - n, |
506 |
| - after, |
507 |
| - width = n_digits |
508 |
| - ) |
| 424 | + <span class="macro">format!</span>(<span class="string">"{}{}{:0width$}{}"</span>, prefix, before, n, after) |
509 | 425 | }),
|
510 | 426 | <span class="comment">// octal
|
511 | 427 | </span>(<span class="string">"0"</span>, <span class="string">"o"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
512 |
| - <span class="macro">format!</span>( |
513 |
| - <span class="string">"{}{}{:0width$o}{}"</span>, |
514 |
| - prefix, |
515 |
| - before, |
516 |
| - n, |
517 |
| - after, |
518 |
| - width = n_digits |
519 |
| - ) |
| 428 | + <span class="macro">format!</span>(<span class="string">"{}{}{:0width$o}{}"</span>, prefix, before, n, after) |
520 | 429 | }),
|
521 | 430 | <span class="comment">// lower hexadecimal
|
522 | 431 | </span>(<span class="string">"0"</span>, <span class="string">"x"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
523 |
| - <span class="macro">format!</span>( |
524 |
| - <span class="string">"{}{}{:0width$x}{}"</span>, |
525 |
| - prefix, |
526 |
| - before, |
527 |
| - n, |
528 |
| - after, |
529 |
| - width = n_digits |
530 |
| - ) |
| 432 | + <span class="macro">format!</span>(<span class="string">"{}{}{:0width$x}{}"</span>, prefix, before, n, after) |
531 | 433 | }),
|
532 | 434 | <span class="comment">// upper hexadecimal
|
533 | 435 | </span>(<span class="string">"0"</span>, <span class="string">"X"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
534 |
| - <span class="macro">format!</span>( |
535 |
| - <span class="string">"{}{}{:0width$X}{}"</span>, |
536 |
| - prefix, |
537 |
| - before, |
538 |
| - n, |
539 |
| - after, |
540 |
| - width = n_digits |
541 |
| - ) |
| 436 | + <span class="macro">format!</span>(<span class="string">"{}{}{:0width$X}{}"</span>, prefix, before, n, after) |
542 | 437 | }),
|
543 | 438 |
|
544 | 439 | <span class="comment">/*
|
545 | 440 | * Alternate form
|
546 | 441 | */
|
547 | 442 | // octal
|
548 | 443 | </span>(<span class="string">"#"</span>, <span class="string">"o"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
549 |
| - <span class="macro">format!</span>( |
550 |
| - <span class="string">"{}{}{:>#width$o}{}"</span>, |
551 |
| - prefix, |
552 |
| - before, |
553 |
| - n, |
554 |
| - after, |
555 |
| - width = n_digits |
556 |
| - ) |
| 444 | + <span class="macro">format!</span>(<span class="string">"{}{}{:>#width$o}{}"</span>, prefix, before, n, after) |
557 | 445 | }),
|
558 | 446 | <span class="comment">// lower hexadecimal
|
559 | 447 | </span>(<span class="string">"#"</span>, <span class="string">"x"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
560 |
| - <span class="macro">format!</span>( |
561 |
| - <span class="string">"{}{}{:>#width$x}{}"</span>, |
562 |
| - prefix, |
563 |
| - before, |
564 |
| - n, |
565 |
| - after, |
566 |
| - width = n_digits |
567 |
| - ) |
| 448 | + <span class="macro">format!</span>(<span class="string">"{}{}{:>#width$x}{}"</span>, prefix, before, n, after) |
568 | 449 | }),
|
569 | 450 | <span class="comment">// upper hexadecimal
|
570 | 451 | </span>(<span class="string">"#"</span>, <span class="string">"X"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
571 |
| - <span class="macro">format!</span>( |
572 |
| - <span class="string">"{}{}{:>#width$X}{}"</span>, |
573 |
| - prefix, |
574 |
| - before, |
575 |
| - n, |
576 |
| - after, |
577 |
| - width = n_digits |
578 |
| - ) |
| 452 | + <span class="macro">format!</span>(<span class="string">"{}{}{:>#width$X}{}"</span>, prefix, before, n, after) |
579 | 453 | }),
|
580 | 454 |
|
581 | 455 | <span class="comment">/*
|
582 | 456 | * Left adjusted
|
583 | 457 | */
|
584 | 458 | // decimal
|
585 | 459 | </span>(<span class="string">"-"</span>, <span class="string">"d" </span>| <span class="string">"i" </span>| <span class="string">"u"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
586 |
| - <span class="macro">format!</span>( |
587 |
| - <span class="string">"{}{}{:<#width$}{}"</span>, |
588 |
| - prefix, |
589 |
| - before, |
590 |
| - n, |
591 |
| - after, |
592 |
| - width = n_digits |
593 |
| - ) |
| 460 | + <span class="macro">format!</span>(<span class="string">"{}{}{:<#width$}{}"</span>, prefix, before, n, after) |
594 | 461 | }),
|
595 | 462 | <span class="comment">// octal
|
596 | 463 | </span>(<span class="string">"-"</span>, <span class="string">"o"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
597 |
| - <span class="macro">format!</span>( |
598 |
| - <span class="string">"{}{}{:<#width$o}{}"</span>, |
599 |
| - prefix, |
600 |
| - before, |
601 |
| - n, |
602 |
| - after, |
603 |
| - width = n_digits |
604 |
| - ) |
| 464 | + <span class="macro">format!</span>(<span class="string">"{}{}{:<#width$o}{}"</span>, prefix, before, n, after) |
605 | 465 | }),
|
606 | 466 | <span class="comment">// lower hexadecimal
|
607 | 467 | </span>(<span class="string">"-"</span>, <span class="string">"x"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
608 |
| - <span class="macro">format!</span>( |
609 |
| - <span class="string">"{}{}{:<#width$x}{}"</span>, |
610 |
| - prefix, |
611 |
| - before, |
612 |
| - n, |
613 |
| - after, |
614 |
| - width = n_digits |
615 |
| - ) |
| 468 | + <span class="macro">format!</span>(<span class="string">"{}{}{:<#width$x}{}"</span>, prefix, before, n, after) |
616 | 469 | }),
|
617 | 470 | <span class="comment">// upper hexadecimal
|
618 | 471 | </span>(<span class="string">"-"</span>, <span class="string">"X"</span>) => Box::new(<span class="kw">move </span>|n: usize| -> String {
|
619 |
| - <span class="macro">format!</span>( |
620 |
| - <span class="string">"{}{}{:<#width$X}{}"</span>, |
621 |
| - prefix, |
622 |
| - before, |
623 |
| - n, |
624 |
| - after, |
625 |
| - width = n_digits |
626 |
| - ) |
| 472 | + <span class="macro">format!</span>(<span class="string">"{}{}{:<#width$X}{}"</span>, prefix, before, n, after) |
627 | 473 | }),
|
628 | 474 |
|
629 | 475 | <span class="kw">_ </span>=> <span class="kw">return </span><span class="prelude-val">Err</span>(CsplitError::SuffixFormatIncorrect),
|
|
0 commit comments