MCPcopy Create free account
hub / github.com/bigdra50/unity-cli / _compare_elements

Function _compare_elements

unity_cli/api/uitree_snapshot.py:98–116  ·  view source on GitHub ↗

Compare two flattened element lists by name.

(baseline: list[dict[str, Any]], current: list[dict[str, Any]])

Source from the content-addressed store, hash-verified

96
97
98def _compare_elements(baseline: list[dict[str, Any]], current: list[dict[str, Any]]) -> dict[str, Any]:
99 """Compare two flattened element lists by name."""
100 baseline_by_ref = {e["ref"]: e for e in baseline if e["ref"]}
101 current_by_ref = {e["ref"]: e for e in current if e["ref"]}
102
103 baseline_refs = set(baseline_by_ref)
104 current_refs = set(current_by_ref)
105
106 added = [current_by_ref[r] for r in sorted(current_refs - baseline_refs)]
107 removed = [baseline_by_ref[r] for r in sorted(baseline_refs - current_refs)]
108 changed = _find_class_changes(baseline_by_ref, current_by_ref, baseline_refs & current_refs)
109
110 return {
111 "baseline_count": len(baseline),
112 "current_count": len(current),
113 "added": added,
114 "removed": removed,
115 "changed": changed,
116 }
117
118
119def _find_class_changes(

Callers 1

diffMethod · 0.85

Calls 1

_find_class_changesFunction · 0.85

Tested by

no test coverage detected