Introduce `AdvertisedProviderSet#fingerprint`. This is currently unused in the Bazel binary, but may be useful elsewhere (e.g. clients of `BazelPackageLoader`).
PiperOrigin-RevId: 343178639
diff --git a/src/main/java/com/google/devtools/build/lib/packages/BuiltinProvider.java b/src/main/java/com/google/devtools/build/lib/packages/BuiltinProvider.java
index 13aae66..33f430c 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/BuiltinProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/BuiltinProvider.java
@@ -15,6 +15,7 @@
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
+import com.google.devtools.build.lib.util.Fingerprint;
import javax.annotation.Nullable;
import net.starlark.java.eval.Printer;
import net.starlark.java.syntax.Location;
@@ -129,6 +130,13 @@
}
@Override
+ void fingerprint(Fingerprint fp) {
+ // True => native
+ fp.addBoolean(true);
+ fp.addString(name);
+ }
+
+ @Override
public int hashCode() {
return providerClass.hashCode();
}