Commit b41cf99
Remove post-filter validation, use checked arithmetic in wire sizes
The IR emitter faithfully represents the filtered XDR — semantic
validation of the source (union coverage, dangling references) is
the consumer's responsibility, not the emitter's. Remove
validate_union_coverage and simplify filter_spec to just filter.
Use checked arithmetic in wire size computation: checked_add,
checked_mul, and u32::try_from for const resolution. Return None
(variable size) on overflow or unresolvable constants instead of
panicking or silently wrapping.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>1 parent 160756c commit b41cf99
File tree
10 files changed
+163
-218
lines changed- xdr-definitions-json
- xdr-generator-rust
- generator/src
- tests
- xdr-parser/src
10 files changed
+163
-218
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
55 | | - | |
| 55 | + | |
56 | 56 | | |
57 | 57 | | |
58 | | - | |
59 | | - | |
| 58 | + | |
| 59 | + | |
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
| |||
Lines changed: 38 additions & 14 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1688 | 1688 | | |
1689 | 1689 | | |
1690 | 1690 | | |
| 1691 | + | |
| 1692 | + | |
| 1693 | + | |
| 1694 | + | |
1691 | 1695 | | |
1692 | 1696 | | |
1693 | 1697 | | |
| |||
1967 | 1971 | | |
1968 | 1972 | | |
1969 | 1973 | | |
1970 | | - | |
| 1974 | + | |
1971 | 1975 | | |
1972 | 1976 | | |
1973 | 1977 | | |
1974 | | - | |
| 1978 | + | |
1975 | 1979 | | |
1976 | 1980 | | |
1977 | 1981 | | |
1978 | | - | |
| 1982 | + | |
1979 | 1983 | | |
1980 | 1984 | | |
1981 | 1985 | | |
1982 | | - | |
| 1986 | + | |
1983 | 1987 | | |
1984 | 1988 | | |
1985 | 1989 | | |
1986 | | - | |
| 1990 | + | |
1987 | 1991 | | |
1988 | 1992 | | |
1989 | 1993 | | |
1990 | | - | |
| 1994 | + | |
1991 | 1995 | | |
1992 | 1996 | | |
1993 | 1997 | | |
1994 | | - | |
| 1998 | + | |
1995 | 1999 | | |
1996 | 2000 | | |
1997 | 2001 | | |
1998 | | - | |
| 2002 | + | |
1999 | 2003 | | |
2000 | 2004 | | |
2001 | 2005 | | |
2002 | | - | |
| 2006 | + | |
2003 | 2007 | | |
2004 | 2008 | | |
2005 | 2009 | | |
2006 | | - | |
| 2010 | + | |
2007 | 2011 | | |
2008 | 2012 | | |
2009 | 2013 | | |
2010 | | - | |
| 2014 | + | |
2011 | 2015 | | |
2012 | 2016 | | |
2013 | 2017 | | |
2014 | | - | |
| 2018 | + | |
2015 | 2019 | | |
2016 | 2020 | | |
2017 | 2021 | | |
2018 | | - | |
2019 | | - | |
| 2022 | + | |
| 2023 | + | |
2020 | 2024 | | |
2021 | 2025 | | |
2022 | 2026 | | |
| |||
24324 | 24328 | | |
24325 | 24329 | | |
24326 | 24330 | | |
| 24331 | + | |
| 24332 | + | |
| 24333 | + | |
| 24334 | + | |
| 24335 | + | |
| 24336 | + | |
| 24337 | + | |
| 24338 | + | |
| 24339 | + | |
| 24340 | + | |
| 24341 | + | |
| 24342 | + | |
| 24343 | + | |
| 24344 | + | |
| 24345 | + | |
| 24346 | + | |
| 24347 | + | |
| 24348 | + | |
| 24349 | + | |
| 24350 | + | |
24327 | 24351 | | |
24328 | 24352 | | |
24329 | 24353 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
302 | 302 | | |
303 | 303 | | |
304 | 304 | | |
305 | | - | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
306 | 310 | | |
307 | 311 | | |
308 | 312 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
15 | | - | |
| 15 | + | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| |||
88 | 88 | | |
89 | 89 | | |
90 | 90 | | |
91 | | - | |
| 91 | + | |
92 | 92 | | |
93 | 93 | | |
94 | 94 | | |
| |||
133 | 133 | | |
134 | 134 | | |
135 | 135 | | |
136 | | - | |
| 136 | + | |
| 137 | + | |
137 | 138 | | |
138 | 139 | | |
139 | 140 | | |
| |||
142 | 143 | | |
143 | 144 | | |
144 | 145 | | |
145 | | - | |
146 | | - | |
147 | | - | |
| 146 | + | |
148 | 147 | | |
149 | | - | |
150 | | - | |
151 | 148 | | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | 149 | | |
156 | 150 | | |
157 | | - | |
158 | | - | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
163 | | - | |
164 | | - | |
165 | | - | |
166 | | - | |
167 | | - | |
168 | | - | |
169 | | - | |
170 | | - | |
171 | | - | |
172 | | - | |
173 | | - | |
174 | | - | |
175 | | - | |
176 | | - | |
177 | | - | |
178 | | - | |
179 | | - | |
180 | | - | |
181 | | - | |
182 | | - | |
183 | | - | |
184 | | - | |
185 | | - | |
186 | | - | |
187 | | - | |
188 | | - | |
189 | | - | |
190 | | - | |
191 | | - | |
192 | | - | |
193 | | - | |
194 | | - | |
195 | | - | |
196 | | - | |
197 | | - | |
198 | | - | |
199 | | - | |
200 | | - | |
201 | | - | |
202 | | - | |
203 | | - | |
204 | | - | |
205 | | - | |
206 | | - | |
207 | 151 | | |
208 | 152 | | |
209 | 153 | | |
| |||
227 | 171 | | |
228 | 172 | | |
229 | 173 | | |
230 | | - | |
| 174 | + | |
231 | 175 | | |
232 | 176 | | |
233 | 177 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| 22 | + | |
22 | 23 | | |
23 | 24 | | |
24 | 25 | | |
| |||
0 commit comments