Starlark: assert Program.loads.size() == Program.loadLocations.size()
Internal state check, mostly to make code more readable.
Closes #12923.
PiperOrigin-RevId: 419653657
diff --git a/src/main/java/net/starlark/java/syntax/Program.java b/src/main/java/net/starlark/java/syntax/Program.java
index ba981db..1bf6547 100644
--- a/src/main/java/net/starlark/java/syntax/Program.java
+++ b/src/main/java/net/starlark/java/syntax/Program.java
@@ -13,6 +13,7 @@
// limitations under the License.
package net.starlark.java.syntax;
+import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
/**
@@ -28,6 +29,9 @@
private Program(
Resolver.Function body, ImmutableList<String> loads, ImmutableList<Location> loadLocations) {
+ Preconditions.checkArgument(
+ loads.size() == loadLocations.size(), "each load must have a corresponding location");
+
// TODO(adonovan): compile here.
this.body = body;
this.loads = loads;