diff options
Diffstat (limited to 'kleaf/impl/print_gcno_mapping.py')
-rw-r--r-- | kleaf/impl/print_gcno_mapping.py | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/kleaf/impl/print_gcno_mapping.py b/kleaf/impl/print_gcno_mapping.py index 824ef1e..4368eda 100644 --- a/kleaf/impl/print_gcno_mapping.py +++ b/kleaf/impl/print_gcno_mapping.py @@ -20,17 +20,19 @@ from typing import TextIO, Optional def main(base: Optional[TextIO], mappings: list[str]): - result = [] + mappings_dict = {} if base: - result = json.load(base) + for mapping in json.load(base): + mappings_dict[mapping["from"]] = mapping["to"] for mapping in mappings: from_val, to_val = mapping.split(":") + mappings_dict[from_val] = to_val - result.append({ - "from": from_val, - "to": to_val, - }) + result = [ + {"from": from_val, "to": to_val} + for from_val, to_val in sorted(mappings_dict.items()) + ] print(json.dumps(result, sort_keys=True, indent=2)) |