| { |
| "bindings": { |
| "dart": { |
| "starting_fidl": "step_00_before", |
| "starting_src": "dart/step_00_before.dart", |
| "steps": [ |
| { |
| "instructions": [ |
| "Replace the unknown tag with a default case in any switch statements" |
| ], |
| "source": "dart/step_01_during.dart", |
| "step_num": 1 |
| }, |
| { |
| "fidl": "step_02_after", |
| "step_num": 2 |
| }, |
| { |
| "instructions": [ |
| "You can now remove the default case in any switch statements" |
| ], |
| "source": "dart/step_03_after.dart", |
| "step_num": 3 |
| } |
| ] |
| }, |
| "go": { |
| "starting_fidl": "step_00_before", |
| "starting_src": "go/step_00_before/step_00_before.go", |
| "steps": [ |
| { |
| "instructions": [ |
| "Remove usages of any flexible union specific APIs" |
| ], |
| "source": "go/step_01_after/step_01_after.go", |
| "step_num": 1 |
| }, |
| { |
| "fidl": "step_02_after", |
| "step_num": 2 |
| } |
| ] |
| }, |
| "hlcpp": { |
| "starting_fidl": "step_00_before", |
| "starting_src": "hlcpp/step_00_before.cc", |
| "steps": [ |
| { |
| "instructions": [ |
| "Replace the `kUnknown` tag with a default case in any switch statements", |
| "Remove usages of any flexible union specific APIs" |
| ], |
| "source": "hlcpp/step_01_during.cc", |
| "step_num": 1 |
| }, |
| { |
| "fidl": "step_02_after", |
| "step_num": 2 |
| }, |
| { |
| "instructions": [ |
| "You can now remove the default case" |
| ], |
| "source": "hlcpp/step_03_after.cc", |
| "step_num": 3 |
| } |
| ] |
| }, |
| "llcpp": { |
| "starting_fidl": "step_00_before", |
| "starting_src": "llcpp/step_00_before.cc", |
| "steps": [ |
| { |
| "instructions": [ |
| "Replace the `kUnknown` tag with a default case in any switch statements", |
| "Remove usages of any flexible union specific APIs" |
| ], |
| "source": "llcpp/step_01_during.cc", |
| "step_num": 1 |
| }, |
| { |
| "fidl": "step_02_after", |
| "step_num": 2 |
| }, |
| { |
| "instructions": [ |
| "You can now remove the default case" |
| ], |
| "source": "llcpp/step_03_after.cc", |
| "step_num": 3 |
| } |
| ] |
| }, |
| "rust": { |
| "starting_fidl": "step_00_before", |
| "starting_src": "rust/step_00_before.rs", |
| "steps": [ |
| { |
| "instructions": [ |
| "Add `[allow(unreachable_patterns)]` and an underscore arm to match statements on the union" |
| ], |
| "source": "rust/step_01_during.rs", |
| "step_num": 1 |
| }, |
| { |
| "fidl": "step_02_after", |
| "step_num": 2 |
| }, |
| { |
| "instructions": [ |
| "Remove the attribute and underscore arm" |
| ], |
| "source": "rust/step_03_after.rs", |
| "step_num": 3 |
| } |
| ] |
| } |
| }, |
| "fidl": { |
| "step_00_before": { |
| "instructions": [], |
| "source": "fidl/step_00_before.test.fidl" |
| }, |
| "step_02_after": { |
| "instructions": [ |
| "Change the union from `flexible` to `strict`" |
| ], |
| "source": "fidl/step_02_after.test.fidl" |
| } |
| }, |
| "title": "Change a union from flexible to strict" |
| } |