-
Notifications
You must be signed in to change notification settings - Fork 0
Corpus parity: formatter-enum expansion, raw:false flag, try/catch for binary chains #6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -20,6 +20,8 @@ fields: | |
|
|
||
| - name: flight_level_raw | ||
| from: $m.flight_level_or_ground | ||
| # Intermediate value feeding `altitude`; legacy never stored it in raw. | ||
| raw: false | ||
|
Comment on lines
+23
to
+24
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
For Useful? React with 👍 / 👎. |
||
| decode: | ||
| fn: custom | ||
| custom: parse_flight_level_or_ground | ||
|
|
@@ -58,11 +60,12 @@ formatted: | |
| description: "Position Report" | ||
| items: | ||
| - { type: position, value: $position } | ||
| - { type: timestamp, kind: month, value: $month } | ||
| - { type: timestamp, kind: day, value: $day } | ||
| - { type: timestamp, kind: current, value: $timestamp } | ||
| - { type: timestamp, kind: eta, value: $eta } | ||
| - { type: fuel, units: tons, value: $fuel_in_tons, when_present: true } | ||
| - { type: month, value: $month } | ||
| - { type: day, value: $day } | ||
| - { type: timestamp, value: $timestamp } | ||
| - { type: eta, value: $eta } | ||
| # fuel_in_tons is raw-only in the legacy plugin (no formatted item); | ||
| # the field's auto-raw emit covers it now that no formatter consumes it. | ||
| - { type: airport_origin, value: $departure_icao } | ||
| - { type: airport_destination, value: $arrival_icao } | ||
| - { type: altitude, value: $altitude } | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When
ads-genis run with--target rustor--target c, these shared formatter types are now accepted by the schema/IR and used by the label 44 specs, butcodegen/src/emit-rust.tsandcodegen/src/emit-c.tsstill only map the old formatter names and otherwise emitTODO formattercomments. Because those same emitters suppress auto-raw for fields referenced by formatters, generated Rust/C decoders for these specs will silently omit the formatted items and the canonical raw values for fields such as ETA/out/off/on/in/month/day/fuel_remaining rather than matching the updated TypeScript output.Useful? React with 👍 / 👎.