Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ mapFormatToken()

static void System.Xml.Xsl.XsltOld.NumberAction.mapFormatToken ( string wsToken,
int startLen,
int tokLen,
out NumberingSequence seq,
out int pminlen )
inlinestaticprivate

Definition at line 540 of file NumberAction.cs.

541 {
542 char c = wsToken[startLen];
543 bool flag = false;
544 pminlen = 1;
546 int num = c;
547 if (num <= 2406)
548 {
549 if (num == 48 || num == 2406)
550 {
551 goto IL_0042;
552 }
553 }
554 else if (num == 3664 || num == 51067 || num == 65296)
555 {
556 goto IL_0042;
557 }
558 goto IL_0071;
559 IL_0071:
560 if (!flag)
561 {
562 switch (wsToken[startLen])
563 {
564 case '1':
565 seq = NumberingSequence.FirstDecimal;
566 break;
567 case 'A':
568 seq = NumberingSequence.FirstAlpha;
569 break;
570 case 'I':
571 seq = NumberingSequence.FirstSpecial;
572 break;
573 case 'a':
574 seq = NumberingSequence.LCLetter;
575 break;
576 case 'i':
577 seq = NumberingSequence.LCRoman;
578 break;
579 case 'А':
580 seq = NumberingSequence.UCRus;
581 break;
582 case 'а':
583 seq = NumberingSequence.LCRus;
584 break;
585 case 'א':
586 seq = NumberingSequence.Hebrew;
587 break;
588 case 'أ':
589 seq = NumberingSequence.ArabicScript;
590 break;
591 case 'अ':
592 seq = NumberingSequence.Hindi2;
593 break;
594 case 'क':
595 seq = NumberingSequence.Hindi1;
596 break;
597 case '१':
598 seq = NumberingSequence.Hindi3;
599 break;
600 case 'ก':
601 seq = NumberingSequence.Thai1;
602 break;
603 case '๑':
604 seq = NumberingSequence.Thai2;
605 break;
606 case 'ア':
607 seq = NumberingSequence.DAiueo;
608 break;
609 case 'イ':
610 seq = NumberingSequence.DIroha;
611 break;
612 case 'ㄱ':
613 seq = NumberingSequence.DChosung;
614 break;
615 case '一':
616 seq = NumberingSequence.FEDecimal;
617 break;
618 case '壱':
619 seq = NumberingSequence.DbNum3;
620 break;
621 case '壹':
622 seq = NumberingSequence.ChnCmplx;
623 break;
624 case '子':
625 seq = NumberingSequence.Zodiac2;
626 break;
627 case '가':
628 seq = NumberingSequence.Ganada;
629 break;
630 case '일':
631 seq = NumberingSequence.KorDbNum1;
632 break;
633 case '하':
634 seq = NumberingSequence.KorDbNum3;
635 break;
636 case '1':
637 seq = NumberingSequence.DArabic;
638 break;
639 case 'ア':
640 seq = NumberingSequence.Aiueo;
641 break;
642 case 'イ':
643 seq = NumberingSequence.Iroha;
644 break;
645 case '甲':
646 if (tokLen > 1 && wsToken[startLen + 1] == '子')
647 {
648 seq = NumberingSequence.Zodiac3;
649 tokLen--;
650 startLen++;
651 }
652 else
653 {
654 seq = NumberingSequence.Zodiac1;
655 }
656 break;
657 default:
658 seq = NumberingSequence.FirstDecimal;
659 break;
660 }
661 }
662 if (flag)
663 {
664 seq = NumberingSequence.FirstDecimal;
665 pminlen = 0;
666 }
667 return;
668 IL_0042:
669 do
670 {
671 pminlen++;
672 }
673 while (--tokLen > 0 && c == wsToken[++startLen]);
674 if (wsToken[startLen] != (ushort)(c + 1))
675 {
676 flag = true;
677 }
678 goto IL_0071;
679 }

References System.Xml.Dictionary.

Referenced by System.Xml.Xsl.XsltOld.NumberAction.ParseFormat().