ahat: Improve field diffing.
* Factor field diffing code out of Diff into its own class.
* Switch to a new interface for diffing fields that does not rely on
being passed mutable lists.
* Reimplement field diff to work better when fields have been added,
deleted, or reordered.
Bug: 62408050
Test: m ahat-test, with new tests for field diff added.
Change-Id: I56c0414f8f4c11809895d809494d752201d33563
diff --git a/tools/ahat/test/TestDump.java b/tools/ahat/test/TestDump.java
index ceb7346..3dce2dc 100644
--- a/tools/ahat/test/TestDump.java
+++ b/tools/ahat/test/TestDump.java
@@ -118,9 +118,9 @@
private Value getDumpedValue(String name, AhatSnapshot snapshot) {
AhatClassObj main = snapshot.findClass("Main");
AhatInstance stuff = null;
- for (FieldValue fields : main.getStaticFieldValues()) {
- if ("stuff".equals(fields.getName())) {
- stuff = fields.getValue().asAhatInstance();
+ for (FieldValue field : main.getStaticFieldValues()) {
+ if ("stuff".equals(field.name)) {
+ stuff = field.value.asAhatInstance();
}
}
return stuff.getField(name);