1#[macro_export]
38macro_rules! tt_atoi {
39 {
41 $caller:tt
42 input = [{ }]
43 acc = [{ $($a:tt)* }]
44 } => {
45 tt_call::tt_return! {
46 $caller
47 input = [{ $($a)* }]
48 }
49 };
50
51 {
53 $caller:tt
54 input = [{ 0 $($n:tt)* }]
55 acc = [{ $($a:tt)* }]
56 } => {
57 tt_atoi! {
58 $caller
59 input = [{ $($n)* }]
60 acc = [{ $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* }]
61 }
62 };
63
64 {
66 $caller:tt
67 input = [{ 1 $($n:tt)* }]
68 acc = [{ $($a:tt)* }]
69 } => {
70 tt_atoi! {
71 $caller
72 input = [{ $($n)* }]
73 acc = [{ $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* . }]
74 }
75 };
76
77 {
79 $caller:tt
80 input = [{ 2 $($n:tt)* }]
81 acc = [{ $($a:tt)* }]
82 } => {
83 tt_atoi! {
84 $caller
85 input = [{ $($n)* }]
86 acc = [{ $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* . . }]
87 }
88 };
89
90 {
92 $caller:tt
93 input = [{ 3 $($n:tt)* }]
94 acc = [{ $($a:tt)* }]
95 } => {
96 tt_atoi! {
97 $caller
98 input = [{ $($n)* }]
99 acc = [{ $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* . . . }]
100 }
101 };
102
103 {
105 $caller:tt
106 input = [{ 4 $($n:tt)* }]
107 acc = [{ $($a:tt)* }]
108 } => {
109 tt_atoi! {
110 $caller
111 input = [{ $($n)* }]
112 acc = [{ $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* . . . . }]
113 }
114 };
115
116 {
118 $caller:tt
119 input = [{ 5 $($n:tt)* }]
120 acc = [{ $($a:tt)* }]
121 } => {
122 tt_atoi! {
123 $caller
124 input = [{ $($n)* }]
125 acc = [{ $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* . . . . . }]
126 }
127 };
128
129 {
131 $caller:tt
132 input = [{ 6 $($n:tt)* }]
133 acc = [{ $($a:tt)* }]
134 } => {
135 tt_atoi! {
136 $caller
137 input = [{ $($n)* }]
138 acc = [{ $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* . . . . . . }]
139 }
140 };
141
142 {
144 $caller:tt
145 input = [{ 7 $($n:tt)* }]
146 acc = [{ $($a:tt)* }]
147 } => {
148 tt_atoi! {
149 $caller
150 input = [{ $($n)* }]
151 acc = [{ $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* . . . . . . . }]
152 }
153 };
154
155 {
157 $caller:tt
158 input = [{ 8 $($n:tt)* }]
159 acc = [{ $($a:tt)* }]
160 } => {
161 tt_atoi! {
162 $caller
163 input = [{ $($n)* }]
164 acc = [{ $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* . . . . . . . . }]
165 }
166 };
167
168 {
170 $caller:tt
171 input = [{ 9 $($n:tt)* }]
172 acc = [{ $($a:tt)* }]
173 } => {
174 tt_atoi! {
175 $caller
176 input = [{ $($n)* }]
177 acc = [{ $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* $($a)* . . . . . . . . . }]
178 }
179 };
180}
181