Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
TokenInfo.cs
Go to the documentation of this file.
2
3internal sealed class TokenInfo
4{
5 public char startChar;
6
7 public int startIdx;
8
9 public string formatString;
10
11 public int length;
12
13 private TokenInfo()
14 {
15 }
16
25
26 public static TokenInfo CreateFormat(string formatString, int startIdx, int tokLen)
27 {
31 bool flag = false;
32 char c = formatString[startIdx];
33 switch (c)
34 {
35 default:
37 {
38 break;
39 }
40 if (CharUtil.IsDecimalDigitOne((char)(c + 1)))
41 {
42 int num = startIdx;
43 do
44 {
45 tokenInfo.length++;
46 }
47 while (--tokLen > 0 && c == formatString[++num]);
48 if (formatString[num] == (c = (char)(c + 1)))
49 {
50 break;
51 }
52 }
53 flag = true;
54 break;
55 case '1':
56 case 'A':
57 case 'I':
58 case 'a':
59 case 'i':
60 break;
61 }
62 if (tokLen != 1)
63 {
64 flag = true;
65 }
66 if (flag)
67 {
70 }
71 else
72 {
74 }
75 return tokenInfo;
76 }
77}
static bool IsDecimalDigitOne(char ch)
Definition CharUtil.cs:21
static TokenInfo CreateFormat(string formatString, int startIdx, int tokLen)
Definition TokenInfo.cs:26
static TokenInfo CreateSeparator(string formatString, int startIdx, int tokLen)
Definition TokenInfo.cs:17