Clean up `ValueWithMetadata` a bit.

PiperOrigin-RevId: 404031497
diff --git a/src/main/java/com/google/devtools/build/skyframe/ValueWithMetadata.java b/src/main/java/com/google/devtools/build/skyframe/ValueWithMetadata.java
index 3d4ee92..05d5518 100644
--- a/src/main/java/com/google/devtools/build/skyframe/ValueWithMetadata.java
+++ b/src/main/java/com/google/devtools/build/skyframe/ValueWithMetadata.java
@@ -31,10 +31,9 @@
   protected final SkyValue value;
 
   private static final NestedSet<TaggedEvents> NO_EVENTS =
-      NestedSetBuilder.<TaggedEvents>emptySet(Order.STABLE_ORDER);
+      NestedSetBuilder.emptySet(Order.STABLE_ORDER);
 
-  private static final NestedSet<Postable> NO_POSTS =
-      NestedSetBuilder.<Postable>emptySet(Order.STABLE_ORDER);
+  private static final NestedSet<Postable> NO_POSTS = NestedSetBuilder.emptySet(Order.STABLE_ORDER);
 
   private ValueWithMetadata(SkyValue value) {
     this.value = value;
@@ -63,17 +62,18 @@
       @Nullable ErrorInfo errorInfo,
       NestedSet<TaggedEvents> transitiveEvents,
       NestedSet<Postable> transitivePostables) {
-    Preconditions.checkState(value != null || errorInfo != null,
-        "Value and error cannot both be null");
+    Preconditions.checkState(
+        value != null || errorInfo != null, "Value and error cannot both be null");
     if (errorInfo == null) {
-      return (transitiveEvents.isEmpty() && transitivePostables.isEmpty())
+      return transitiveEvents.isEmpty() && transitivePostables.isEmpty()
           ? value
           : ValueWithEvents.createValueWithEvents(value, transitiveEvents, transitivePostables);
     }
     return new ErrorInfoValue(errorInfo, value, transitiveEvents, transitivePostables);
   }
 
-  @Nullable SkyValue getValue() {
+  @Nullable
+  SkyValue getValue() {
     return value;
   }
 
@@ -112,10 +112,14 @@
 
     @Nullable
     @Override
-    ErrorInfo getErrorInfo() { return null; }
+    ErrorInfo getErrorInfo() {
+      return null;
+    }
 
     @Override
-    public NestedSet<TaggedEvents> getTransitiveEvents() { return transitiveEvents; }
+    public NestedSet<TaggedEvents> getTransitiveEvents() {
+      return transitiveEvents;
+    }
 
     @Override
     public NestedSet<Postable> getTransitivePostables() {
@@ -131,7 +135,7 @@
       if (this == o) {
         return true;
       }
-      if (o == null || getClass() != o.getClass()) {
+      if (!(o instanceof ValueWithEvents)) {
         return false;
       }
 
@@ -159,14 +163,14 @@
     public String toString() {
       return MoreObjects.toStringHelper(this)
           .add("value", value)
-          .add("transitiveEvents size", transitiveEvents.toList().size())
-          .add("transitivePostables size", transitivePostables.toList().size())
+          .add("transitiveEvents size", transitiveEvents.memoizedFlattenAndGetSize())
+          .add("transitivePostables size", transitivePostables.memoizedFlattenAndGetSize())
           .toString();
     }
   }
 
   private static final class NotComparableValueWithEvents extends ValueWithEvents
-          implements NotComparableSkyValue {
+      implements NotComparableSkyValue {
     private NotComparableValueWithEvents(
         SkyValue value,
         NestedSet<TaggedEvents> transitiveEvents,
@@ -187,7 +191,7 @@
     private final NestedSet<TaggedEvents> transitiveEvents;
     private final NestedSet<Postable> transitivePostables;
 
-    public ErrorInfoValue(
+    ErrorInfoValue(
         ErrorInfo errorInfo,
         @Nullable SkyValue value,
         NestedSet<TaggedEvents> transitiveEvents,
@@ -200,10 +204,14 @@
 
     @Nullable
     @Override
-    ErrorInfo getErrorInfo() { return errorInfo; }
+    ErrorInfo getErrorInfo() {
+      return errorInfo;
+    }
 
     @Override
-    public NestedSet<TaggedEvents> getTransitiveEvents() { return transitiveEvents; }
+    public NestedSet<TaggedEvents> getTransitiveEvents() {
+      return transitiveEvents;
+    }
 
     @Override
     public NestedSet<Postable> getTransitivePostables() {
@@ -259,7 +267,7 @@
   @Nullable
   public static SkyValue justValue(SkyValue value) {
     if (value instanceof ValueWithMetadata) {
-      return ((ValueWithMetadata) value).getValue();
+      return ((ValueWithMetadata) value).value;
     }
     return value;
   }
@@ -273,24 +281,23 @@
 
   @Nullable
   public static ErrorInfo getMaybeErrorInfo(SkyValue value) {
-    if (value.getClass() == ErrorInfoValue.class) {
+    if (value instanceof ErrorInfoValue) {
       return ((ValueWithMetadata) value).getErrorInfo();
     }
     return null;
   }
 
-  @VisibleForTesting
   public static NestedSet<TaggedEvents> getEvents(SkyValue value) {
     if (value instanceof ValueWithMetadata) {
       return ((ValueWithMetadata) value).getTransitiveEvents();
     }
-    return NestedSetBuilder.emptySet(Order.STABLE_ORDER);
+    return NO_EVENTS;
   }
 
-  static NestedSet<Postable> getPosts(SkyValue value) {
+  public static NestedSet<Postable> getPosts(SkyValue value) {
     if (value instanceof ValueWithMetadata) {
       return ((ValueWithMetadata) value).getTransitivePostables();
     }
-    return NestedSetBuilder.emptySet(Order.STABLE_ORDER);
+    return NO_POSTS;
   }
 }