bazel syntax: rename SkylarkList to Sequence
This is a breaking change for copybara.
PiperOrigin-RevId: 280090855
diff --git a/src/main/java/com/google/devtools/build/docgen/skylark/SkylarkDoc.java b/src/main/java/com/google/devtools/build/docgen/skylark/SkylarkDoc.java
index def8e1a..25a199d 100644
--- a/src/main/java/com/google/devtools/build/docgen/skylark/SkylarkDoc.java
+++ b/src/main/java/com/google/devtools/build/docgen/skylark/SkylarkDoc.java
@@ -21,7 +21,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.NoneType;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.StarlarkList;
import com.google.devtools.build.lib.syntax.Tuple;
import java.lang.reflect.Method;
@@ -64,7 +64,7 @@
return "<a class=\"anchor\" href=\"tuple.html\">tuple</a>";
} else if (type.equals(StarlarkList.class) || type.equals(ImmutableList.class)) {
return "<a class=\"anchor\" href=\"list.html\">list</a>";
- } else if (type.equals(SkylarkList.class)) {
+ } else if (type.equals(Sequence.class)) {
return "<a class=\"anchor\" href=\"list.html\">sequence</a>";
} else if (type.equals(Void.TYPE) || type.equals(NoneType.class)) {
return "<a class=\"anchor\" href=\"" + TOP_LEVEL_ID + ".html#None\">None</a>";
diff --git a/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java b/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java
index 999d8da..15ba03e 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java
@@ -35,8 +35,8 @@
import com.google.devtools.build.lib.skylarkbuildapi.CommandLineArgsApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.build.lib.vfs.Root;
@@ -532,12 +532,12 @@
}
@Override
- public SkylarkList<String> getSkylarkArgv() throws EvalException {
+ public Sequence<String> getSkylarkArgv() throws EvalException {
return null;
}
@Override
- public SkylarkList<CommandLineArgsApi> getStarlarkArgs() throws EvalException {
+ public Sequence<CommandLineArgsApi> getStarlarkArgs() throws EvalException {
// Not all action types support returning Args.
return null;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/CommandHelper.java b/src/main/java/com/google/devtools/build/lib/analysis/CommandHelper.java
index 9d5b6fb..543d8e0 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/CommandHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/CommandHelper.java
@@ -27,7 +27,7 @@
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.util.OS;
import com.google.devtools.build.lib.util.Pair;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -130,7 +130,7 @@
public static int maxCommandLength = OS.getCurrent() == OS.WINDOWS ? 8000 : 64000;
/** {@link RunfilesSupplier}s for tools used by this rule. */
- private final SkylarkList<RunfilesSupplier> toolsRunfilesSuppliers;
+ private final Sequence<RunfilesSupplier> toolsRunfilesSuppliers;
/**
* Use labelMap for heuristically expanding labels (does not include "outs")
@@ -208,7 +208,7 @@
}
this.resolvedTools = resolvedToolsBuilder.build();
- this.toolsRunfilesSuppliers = SkylarkList.createImmutable(toolsRunfilesBuilder.build());
+ this.toolsRunfilesSuppliers = Sequence.createImmutable(toolsRunfilesBuilder.build());
ImmutableMap.Builder<Label, ImmutableCollection<Artifact>> labelMapBuilder =
ImmutableMap.builder();
for (Map.Entry<Label, Collection<Artifact>> entry : tempLabelMap.entrySet()) {
@@ -221,7 +221,7 @@
return resolvedTools;
}
- public SkylarkList<RunfilesSupplier> getToolsRunfilesSuppliers() {
+ public Sequence<RunfilesSupplier> getToolsRunfilesSuppliers() {
return toolsRunfilesSuppliers;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java
index aed88d9..e9eb04f 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java
@@ -73,7 +73,7 @@
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import com.google.devtools.build.lib.skylarkbuildapi.CommandLineArgsApi;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.util.Fingerprint;
import com.google.devtools.build.lib.util.LazyString;
import com.google.devtools.build.lib.util.Pair;
@@ -244,7 +244,7 @@
}
@Override
- public SkylarkList<CommandLineArgsApi> getStarlarkArgs() throws EvalException {
+ public Sequence<CommandLineArgsApi> getStarlarkArgs() throws EvalException {
ImmutableList.Builder<CommandLineArgsApi> result = ImmutableList.builder();
ImmutableSet<Artifact> directoryInputs =
Streams.stream(getInputs())
@@ -254,13 +254,13 @@
for (CommandLineAndParamFileInfo commandLine : commandLines.getCommandLines()) {
result.add(Args.forRegisteredAction(commandLine, directoryInputs));
}
- return SkylarkList.createImmutable(result.build());
+ return Sequence.createImmutable(result.build());
}
@Override
- public SkylarkList<String> getSkylarkArgv() throws EvalException {
+ public Sequence<String> getSkylarkArgv() throws EvalException {
try {
- return SkylarkList.createImmutable(getArguments());
+ return Sequence.createImmutable(getArguments());
} catch (CommandLineExpansionException exception) {
throw new EvalException(Location.BUILTIN, exception);
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/StarlarkDefinedConfigTransition.java b/src/main/java/com/google/devtools/build/lib/analysis/config/StarlarkDefinedConfigTransition.java
index 539dd82..7fca8b7 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/config/StarlarkDefinedConfigTransition.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/config/StarlarkDefinedConfigTransition.java
@@ -25,8 +25,8 @@
import com.google.devtools.build.lib.syntax.BaseFunction;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.Mutability;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import java.util.List;
@@ -249,11 +249,11 @@
} catch (EvalException e) {
throw new EvalException(impl.getLocation(), e.getMessage());
}
- } else if (result instanceof SkylarkList) {
+ } else if (result instanceof Sequence) {
ImmutableList.Builder<Map<String, Object>> builder = ImmutableList.builder();
try {
for (SkylarkDict<?, ?> toOptions :
- ((SkylarkList<?>) result)
+ ((Sequence<?>) result)
.getContents(SkylarkDict.class, "dictionary of options dictionaries")) {
builder.add(toOptions.getContents(String.class, Object.class, "dictionary of options"));
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/configuredtargets/AbstractConfiguredTarget.java b/src/main/java/com/google/devtools/build/lib/analysis/configuredtargets/AbstractConfiguredTarget.java
index 6eb2138..2a0ddc9 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/configuredtargets/AbstractConfiguredTarget.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/configuredtargets/AbstractConfiguredTarget.java
@@ -142,7 +142,7 @@
return getLabel();
case RuleConfiguredTarget.ACTIONS_FIELD_NAME:
// Depending on subclass, the 'actions' field will either be unsupported or of type
- // java.util.List, which needs to be converted to SkylarkList before being returned.
+ // java.util.List, which needs to be converted to Sequence before being returned.
Object result = get(name);
if (result != null) {
result = SkylarkType.convertToSkylark(result, (Mutability) null);
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintCollection.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintCollection.java
index f4dfdb2..4982828 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintCollection.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintCollection.java
@@ -37,7 +37,7 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.Printer;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.util.Fingerprint;
import java.util.Collection;
import java.util.Map;
@@ -229,8 +229,8 @@
}
@Override
- public SkylarkList<ConstraintSettingInfo> constraintSettings() {
- return SkylarkList.createImmutable(constraints().keySet());
+ public Sequence<ConstraintSettingInfo> constraintSettings() {
+ return Sequence.createImmutable(constraints().keySet());
}
@Override
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/skylark/Args.java b/src/main/java/com/google/devtools/build/lib/analysis/skylark/Args.java
index a5eea45..35f98b7 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/skylark/Args.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/skylark/Args.java
@@ -32,7 +32,7 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.FunctionSignature;
import com.google.devtools.build.lib.syntax.Mutability;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkMutable;
@@ -280,7 +280,7 @@
if (argName != null) {
commandLine.add(argName);
}
- if (value instanceof SkylarkNestedSet || value instanceof SkylarkList) {
+ if (value instanceof SkylarkNestedSet || value instanceof Sequence) {
throw new EvalException(
loc,
"Args#add doesn't accept vectorized arguments. "
@@ -413,7 +413,7 @@
vectorArg = new SkylarkCustomCommandLine.VectorArg.Builder(nestedSet);
} else {
@SuppressWarnings("unchecked")
- SkylarkList<Object> skylarkList = (SkylarkList<Object>) value;
+ Sequence<Object> skylarkList = (Sequence<Object>) value;
if (expandDirectories) {
scanForDirectories(skylarkList);
}
@@ -449,7 +449,7 @@
}
private void validateValues(Object values, Location loc) throws EvalException {
- if (!(values instanceof SkylarkList || values instanceof SkylarkNestedSet)) {
+ if (!(values instanceof Sequence || values instanceof SkylarkNestedSet)) {
throw new EvalException(
loc,
String.format(
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java
index eb6420a..4f07062 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java
@@ -53,8 +53,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
@@ -206,7 +206,7 @@
inputs instanceof SkylarkNestedSet
? ((SkylarkNestedSet) inputs).getSetFromParam(Artifact.class, "inputs")
: NestedSetBuilder.<Artifact>compileOrder()
- .addAll(((SkylarkList<?>) inputs).getContents(Artifact.class, "inputs"))
+ .addAll(((Sequence<?>) inputs).getContents(Artifact.class, "inputs"))
.build();
Action action =
new PseudoAction<>(
@@ -279,7 +279,7 @@
@Override
public void run(
- SkylarkList<?> outputs,
+ Sequence<?> outputs,
Object inputs,
Object unusedInputsList,
Object executableUnchecked,
@@ -296,7 +296,7 @@
context.checkMutable("actions.run");
StarlarkAction.Builder builder = new StarlarkAction.Builder();
- SkylarkList<?> argumentsList = ((SkylarkList) arguments);
+ Sequence<?> argumentsList = ((Sequence) arguments);
buildCommandLine(builder, argumentsList);
if (executableUnchecked instanceof Artifact) {
Artifact executable = (Artifact) executableUnchecked;
@@ -365,7 +365,7 @@
@Override
public void runShell(
- SkylarkList<?> outputs,
+ Sequence<?> outputs,
Object inputs,
Object toolsUnchecked,
Object arguments,
@@ -381,7 +381,7 @@
throws EvalException {
context.checkMutable("actions.run_shell");
- SkylarkList<?> argumentList = (SkylarkList) arguments;
+ Sequence<?> argumentList = (Sequence) arguments;
StarlarkAction.Builder builder = new StarlarkAction.Builder();
buildCommandLine(builder, argumentList);
@@ -406,7 +406,7 @@
builder.addTool(provider);
}
}
- } else if (commandUnchecked instanceof SkylarkList) {
+ } else if (commandUnchecked instanceof Sequence) {
if (semantics.incompatibleRunShellCommandString()) {
throw new EvalException(
location,
@@ -414,7 +414,7 @@
+ " is deprecated. To temporarily disable this check,"
+ " set --incompatible_objc_framework_cleanup=false.");
}
- SkylarkList<?> commandList = (SkylarkList) commandUnchecked;
+ Sequence<?> commandList = (Sequence) commandUnchecked;
if (argumentList.size() > 0) {
throw new EvalException(location,
"'arguments' must be empty if 'command' is a sequence of strings");
@@ -449,7 +449,7 @@
builder);
}
- private static void buildCommandLine(SpawnAction.Builder builder, SkylarkList<?> argumentsList)
+ private static void buildCommandLine(SpawnAction.Builder builder, Sequence<?> argumentsList)
throws EvalException {
List<String> stringArgs = new ArrayList<>();
for (Object value : argumentsList) {
@@ -481,7 +481,7 @@
* <p>{@code builder} should have either executable or a command set.
*/
private void registerStarlarkAction(
- SkylarkList<?> outputs,
+ Sequence<?> outputs,
Object inputs,
Object unusedInputsList,
Object toolsUnchecked,
@@ -495,8 +495,8 @@
StarlarkAction.Builder builder)
throws EvalException {
Iterable<Artifact> inputArtifacts;
- if (inputs instanceof SkylarkList) {
- inputArtifacts = ((SkylarkList<?>) inputs).getContents(Artifact.class, "inputs");
+ if (inputs instanceof Sequence) {
+ inputArtifacts = ((Sequence<?>) inputs).getContents(Artifact.class, "inputs");
builder.addInputs(inputArtifacts);
} else {
NestedSet<Artifact> inputSet =
@@ -533,8 +533,8 @@
if (toolsUnchecked != Starlark.UNBOUND) {
Iterable<?> toolsIterable;
- if (toolsUnchecked instanceof SkylarkList) {
- toolsIterable = ((SkylarkList<?>) toolsUnchecked).getContents(Object.class, "tools");
+ if (toolsUnchecked instanceof Sequence) {
+ toolsIterable = ((Sequence<?>) toolsUnchecked).getContents(Object.class, "tools");
} else {
toolsIterable = ((SkylarkNestedSet) toolsUnchecked).getSet();
}
@@ -625,8 +625,9 @@
builder.setExecutionInfo(executionInfo);
if (inputManifestsUnchecked != Starlark.NONE) {
- for (RunfilesSupplier supplier : SkylarkList.castSkylarkListOrNoneToList(
- inputManifestsUnchecked, RunfilesSupplier.class, "runfiles suppliers")) {
+ for (RunfilesSupplier supplier :
+ Sequence.castSkylarkListOrNoneToList(
+ inputManifestsUnchecked, RunfilesSupplier.class, "runfiles suppliers")) {
builder.addRunfilesSupplier(supplier);
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkAttr.java b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkAttr.java
index a3a631c..2e5b747 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkAttr.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkAttr.java
@@ -48,8 +48,8 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.FuncallExpression;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkType;
import com.google.devtools.build.lib.syntax.SkylarkUtils;
import com.google.devtools.build.lib.syntax.Starlark;
@@ -83,10 +83,9 @@
builder.allowedFileTypes(FileTypeSet.ANY_FILE);
} else if (fileTypesObj == Boolean.FALSE) {
builder.allowedFileTypes(FileTypeSet.NO_FILE);
- } else if (fileTypesObj instanceof SkylarkList) {
+ } else if (fileTypesObj instanceof Sequence) {
List<String> arg =
- SkylarkList.castSkylarkListOrNoneToList(
- fileTypesObj, String.class, "allow_files argument");
+ Sequence.castSkylarkListOrNoneToList(fileTypesObj, String.class, "allow_files argument");
builder.allowedFileTypes(FileType.of(arg));
} else {
throw new EvalException(
@@ -157,8 +156,8 @@
}
}
- for (String flag : SkylarkList.castSkylarkListOrNoneToList(
- arguments.get(FLAGS_ARG), String.class, FLAGS_ARG)) {
+ for (String flag :
+ Sequence.castSkylarkListOrNoneToList(arguments.get(FLAGS_ARG), String.class, FLAGS_ARG)) {
builder.setPropertyFlag(flag);
}
@@ -233,21 +232,21 @@
Object ruleClassesObj = arguments.get(ALLOW_RULES_ARG);
if (ruleClassesObj != null && ruleClassesObj != Starlark.NONE) {
builder.allowedRuleClasses(
- SkylarkList.castSkylarkListOrNoneToList(
+ Sequence.castSkylarkListOrNoneToList(
ruleClassesObj, String.class, "allowed rule classes for attribute definition"));
}
- List<Object> values = SkylarkList.castSkylarkListOrNoneToList(
- arguments.get(VALUES_ARG), Object.class, VALUES_ARG);
+ List<Object> values =
+ Sequence.castSkylarkListOrNoneToList(arguments.get(VALUES_ARG), Object.class, VALUES_ARG);
if (!Iterables.isEmpty(values)) {
builder.allowedValues(new AllowedValueSet(values));
}
if (containsNonNoneKey(arguments, PROVIDERS_ARG)) {
Object obj = arguments.get(PROVIDERS_ARG);
- SkylarkType.checkType(obj, SkylarkList.class, PROVIDERS_ARG);
- ImmutableList<ImmutableSet<SkylarkProviderIdentifier>> providersList = buildProviderPredicate(
- (SkylarkList<?>) obj, PROVIDERS_ARG, ast.getLocation());
+ SkylarkType.checkType(obj, Sequence.class, PROVIDERS_ARG);
+ ImmutableList<ImmutableSet<SkylarkProviderIdentifier>> providersList =
+ buildProviderPredicate((Sequence<?>) obj, PROVIDERS_ARG, ast.getLocation());
// If there is at least one empty set, there is no restriction.
if (providersList.stream().noneMatch(ImmutableSet::isEmpty)) {
@@ -298,10 +297,9 @@
if (containsNonNoneKey(arguments, ASPECTS_ARG)) {
Object obj = arguments.get(ASPECTS_ARG);
- SkylarkType.checkType(obj, SkylarkList.class, ASPECTS_ARG);
+ SkylarkType.checkType(obj, Sequence.class, ASPECTS_ARG);
- List<SkylarkAspect> aspects =
- ((SkylarkList<?>) obj).getContents(SkylarkAspect.class, "aspects");
+ List<SkylarkAspect> aspects = ((Sequence<?>) obj).getContents(SkylarkAspect.class, "aspects");
for (SkylarkAspect aspect : aspects) {
aspect.attachToAttribute(builder, ast.getLocation());
}
@@ -311,14 +309,15 @@
}
/**
- * Builds a list of sets of accepted providers from Skylark list {@code obj}.
- * The list can either be a list of providers (in that case the result is a list with one
- * set) or a list of lists of providers (then the result is the list of sets).
+ * Builds a list of sets of accepted providers from Skylark list {@code obj}. The list can either
+ * be a list of providers (in that case the result is a list with one set) or a list of lists of
+ * providers (then the result is the list of sets).
+ *
* @param argumentName used in error messages.
* @param location location for error messages.
*/
static ImmutableList<ImmutableSet<SkylarkProviderIdentifier>> buildProviderPredicate(
- SkylarkList<?> obj, String argumentName, Location location) throws EvalException {
+ Sequence<?> obj, String argumentName, Location location) throws EvalException {
if (obj.isEmpty()) {
return ImmutableList.of();
}
@@ -345,11 +344,11 @@
}
/**
- * Converts Skylark identifiers of providers (either a string or a provider value)
- * to their internal representations.
+ * Converts Skylark identifiers of providers (either a string or a provider value) to their
+ * internal representations.
*/
static ImmutableSet<SkylarkProviderIdentifier> getSkylarkProviderIdentifiers(
- SkylarkList<?> list, Location location) throws EvalException {
+ Sequence<?> list, Location location) throws EvalException {
ImmutableList.Builder<SkylarkProviderIdentifier> result = ImmutableList.builder();
for (Object obj : list) {
@@ -368,7 +367,7 @@
}
private static ImmutableList<ImmutableSet<SkylarkProviderIdentifier>> getProvidersList(
- SkylarkList<?> skylarkList, String argumentName, Location location) throws EvalException {
+ Sequence<?> skylarkList, String argumentName, Location location) throws EvalException {
ImmutableList.Builder<ImmutableSet<SkylarkProviderIdentifier>> providersList =
ImmutableList.builder();
String errorMsg = "Illegal argument: element in '%s' is of unexpected type. "
@@ -376,18 +375,18 @@
+ "or all elements should be lists of providers, but got %s.";
for (Object o : skylarkList) {
- if (!(o instanceof SkylarkList)) {
+ if (!(o instanceof Sequence)) {
throw new EvalException(location, String.format(errorMsg, PROVIDERS_ARG,
"an element of type " + EvalUtils.getDataTypeName(o, true)));
}
- for (Object value : (SkylarkList) o) {
+ for (Object value : (Sequence) o) {
if (!isProvider(value)) {
throw new EvalException(location, String.format(errorMsg, argumentName,
"list with an element of type "
+ EvalUtils.getDataTypeNameFromClass(value.getClass())));
}
}
- providersList.add(getSkylarkProviderIdentifiers((SkylarkList<?>) o, location));
+ providersList.add(getSkylarkProviderIdentifiers((Sequence<?>) o, location));
}
return providersList.build();
}
@@ -454,7 +453,7 @@
Integer defaultInt,
String doc,
Boolean mandatory,
- SkylarkList<?> values,
+ Sequence<?> values,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException {
@@ -474,7 +473,7 @@
String defaultString,
String doc,
Boolean mandatory,
- SkylarkList<?> values,
+ Sequence<?> values,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException {
@@ -496,11 +495,11 @@
Object allowFiles,
Object allowSingleFile,
Boolean mandatory,
- SkylarkList<?> providers,
+ Sequence<?> providers,
Object allowRules,
Boolean singleFile,
Object cfg,
- SkylarkList<?> aspects,
+ Sequence<?> aspects,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException {
@@ -546,7 +545,7 @@
Boolean mandatory,
Boolean nonEmpty,
Boolean allowEmpty,
- SkylarkList<?> defaultList,
+ Sequence<?> defaultList,
String doc,
FuncallExpression ast,
StarlarkThread thread)
@@ -574,7 +573,7 @@
Boolean mandatory,
Boolean nonEmpty,
Boolean allowEmpty,
- SkylarkList<?> defaultList,
+ Sequence<?> defaultList,
String doc,
FuncallExpression ast,
StarlarkThread thread)
@@ -604,12 +603,12 @@
String doc,
Object allowFiles,
Object allowRules,
- SkylarkList<?> providers,
- SkylarkList<?> flags,
+ Sequence<?> providers,
+ Sequence<?> flags,
Boolean mandatory,
Boolean nonEmpty,
Object cfg,
- SkylarkList<?> aspects,
+ Sequence<?> aspects,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException {
@@ -653,12 +652,12 @@
String doc,
Object allowFiles,
Object allowRules,
- SkylarkList<?> providers,
- SkylarkList<?> flags,
+ Sequence<?> providers,
+ Sequence<?> flags,
Boolean mandatory,
Boolean nonEmpty,
Object cfg,
- SkylarkList<?> aspects,
+ Sequence<?> aspects,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException {
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkAttributesCollection.java b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkAttributesCollection.java
index 573bcca..d7a61e9 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkAttributesCollection.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkAttributesCollection.java
@@ -29,7 +29,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.SkylarkAttributesCollectionApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkType;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -218,7 +218,7 @@
} else if (type == BuildType.LABEL_LIST
|| (type == BuildType.LABEL && a.getTransitionFactory().isSplit())) {
List<?> allPrereq = context.getRuleContext().getPrerequisites(a.getName(), Mode.DONT_CHECK);
- attrBuilder.put(skyname, SkylarkList.createImmutable(allPrereq));
+ attrBuilder.put(skyname, Sequence.createImmutable(allPrereq));
} else if (type == BuildType.LABEL_KEYED_STRING_DICT) {
ImmutableMap.Builder<TransitiveInfoCollection, String> builder = ImmutableMap.builder();
Map<Label, String> original = BuildType.LABEL_KEYED_STRING_DICT.cast(val);
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkCustomCommandLine.java b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkCustomCommandLine.java
index 4865871..ea3b4b1 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkCustomCommandLine.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkCustomCommandLine.java
@@ -40,7 +40,7 @@
import com.google.devtools.build.lib.syntax.BaseFunction;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.Mutability;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -465,7 +465,7 @@
}
static class Builder {
- @Nullable private final SkylarkList<?> list;
+ @Nullable private final Sequence<?> list;
@Nullable private final NestedSet<?> nestedSet;
private Location location;
public String argName;
@@ -480,7 +480,7 @@
private boolean uniquify;
private String terminateWith;
- Builder(SkylarkList<?> list) {
+ Builder(Sequence<?> list) {
this.list = list;
this.nestedSet = null;
}
@@ -827,8 +827,8 @@
Object ret = mapFn.callWithArgArray(args, null, thread, location);
if (ret instanceof String) {
consumer.accept((String) ret);
- } else if (ret instanceof SkylarkList) {
- for (Object val : ((SkylarkList) ret)) {
+ } else if (ret instanceof Sequence) {
+ for (Object val : ((Sequence) ret)) {
if (!(val instanceof String)) {
throw new CommandLineExpansionException(
"Expected map_each to return string, None, or list of strings, "
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleClassFunctions.java b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleClassFunctions.java
index 38a8fbd..b30f3c2 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleClassFunctions.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleClassFunctions.java
@@ -86,8 +86,8 @@
import com.google.devtools.build.lib.syntax.FuncallExpression;
import com.google.devtools.build.lib.syntax.FunctionSignature;
import com.google.devtools.build.lib.syntax.Identifier;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkType;
import com.google.devtools.build.lib.syntax.SkylarkUtils;
import com.google.devtools.build.lib.syntax.Starlark;
@@ -253,12 +253,15 @@
@Override
public Provider provider(String doc, Object fields, Location location) throws EvalException {
Iterable<String> fieldNames = null;
- if (fields instanceof SkylarkList<?>) {
+ if (fields instanceof Sequence<?>) {
@SuppressWarnings("unchecked")
- SkylarkList<String> list = (SkylarkList<String>)
+ Sequence<String> list =
+ (Sequence<String>)
SkylarkType.cast(
fields,
- SkylarkList.class, String.class, location,
+ Sequence.class,
+ String.class,
+ location,
"Expected list of strings or dictionary of string -> string for 'fields'");
fieldNames = list;
} else if (fields instanceof SkylarkDict) {
@@ -280,13 +283,13 @@
Object implicitOutputs,
Boolean executable,
Boolean outputToGenfiles,
- SkylarkList<?> fragments,
- SkylarkList<?> hostFragments,
+ Sequence<?> fragments,
+ Sequence<?> hostFragments,
Boolean skylarkTestable,
- SkylarkList<?> toolchains,
+ Sequence<?> toolchains,
String doc,
- SkylarkList<?> providesArg,
- SkylarkList<?> execCompatibleWith,
+ Sequence<?> providesArg,
+ Sequence<?> execCompatibleWith,
Object analysisTest,
Object buildSetting,
Object cfg,
@@ -483,13 +486,13 @@
@Override
public SkylarkAspect aspect(
StarlarkFunction implementation,
- SkylarkList<?> attributeAspects,
+ Sequence<?> attributeAspects,
Object attrs,
- SkylarkList<?> requiredAspectProvidersArg,
- SkylarkList<?> providesArg,
- SkylarkList<?> fragments,
- SkylarkList<?> hostFragments,
- SkylarkList<?> toolchains,
+ Sequence<?> requiredAspectProvidersArg,
+ Sequence<?> providesArg,
+ Sequence<?> fragments,
+ Sequence<?> hostFragments,
+ Sequence<?> toolchains,
String doc,
Boolean applyToGeneratingRules,
FuncallExpression ast, // just for getLocation(); TODO(adonovan): simplify
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleConfiguredTargetUtil.java b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleConfiguredTargetUtil.java
index 351e0f0..c94ae01 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleConfiguredTargetUtil.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleConfiguredTargetUtil.java
@@ -56,7 +56,7 @@
import com.google.devtools.build.lib.syntax.EvalExceptionWithStackTrace;
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.Mutability;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.SkylarkType;
import com.google.devtools.build.lib.syntax.Starlark;
@@ -247,24 +247,23 @@
}
}
- @SuppressWarnings("unchecked") // Casting SkylarkList to List<String> is checked by cast().
+ @SuppressWarnings("unchecked") // Casting Sequence to List<String> is checked by cast().
private static void addInstrumentedFiles(
StructImpl insStruct, RuleContext ruleContext, RuleConfiguredTargetBuilder builder)
throws EvalException {
Location insLoc = insStruct.getCreationLoc();
List<String> extensions = null;
if (insStruct.getFieldNames().contains("extensions")) {
- extensions = cast("extensions", insStruct, SkylarkList.class, String.class, insLoc);
+ extensions = cast("extensions", insStruct, Sequence.class, String.class, insLoc);
}
List<String> dependencyAttributes = Collections.emptyList();
if (insStruct.getFieldNames().contains("dependency_attributes")) {
dependencyAttributes =
- cast("dependency_attributes", insStruct, SkylarkList.class, String.class, insLoc);
+ cast("dependency_attributes", insStruct, Sequence.class, String.class, insLoc);
}
List<String> sourceAttributes = Collections.emptyList();
if (insStruct.getFieldNames().contains("source_attributes")) {
- sourceAttributes =
- cast("source_attributes", insStruct, SkylarkList.class, String.class, insLoc);
+ sourceAttributes = cast("source_attributes", insStruct, Sequence.class, String.class, insLoc);
}
InstrumentedFilesInfo instrumentedFilesProvider =
CoverageCommon.createInstrumentedFilesInfo(
@@ -282,9 +281,9 @@
"Output group '%s' is of unexpected type. "
+ "Should be list or set of Files, but got '%s' instead.";
- if (objects instanceof SkylarkList) {
+ if (objects instanceof Sequence) {
NestedSetBuilder<Artifact> nestedSetBuilder = NestedSetBuilder.stableOrder();
- for (Object o : (SkylarkList) objects) {
+ for (Object o : (Sequence) objects) {
if (o instanceof Artifact) {
nestedSetBuilder.add((Artifact) o);
} else {
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleContext.java b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleContext.java
index 95c8e46..545080a 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleContext.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkRuleContext.java
@@ -81,9 +81,9 @@
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.NoneType;
import com.google.devtools.build.lib.syntax.Printer;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
import com.google.devtools.build.lib.syntax.SkylarkIndexable;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkList;
@@ -211,7 +211,7 @@
outputs.addOutput(attrName, Starlark.NONE);
}
} else if (type == BuildType.OUTPUT_LIST) {
- outputs.addOutput(attrName, SkylarkList.createImmutable(artifacts));
+ outputs.addOutput(attrName, Sequence.createImmutable(artifacts));
} else {
throw new IllegalArgumentException(
"Type of " + attrName + "(" + type + ") is not output type ");
@@ -444,7 +444,7 @@
value = splitPrereq.getValue().get(0);
} else {
// BuildType.LABEL_LIST
- value = SkylarkList.createImmutable(splitPrereq.getValue());
+ value = Sequence.createImmutable(splitPrereq.getValue());
}
if (splitPrereq.getKey().isPresent()) {
@@ -700,7 +700,7 @@
}
@Override
- public SkylarkList<String> tokenize(String optionString) throws EvalException {
+ public Sequence<String> tokenize(String optionString) throws EvalException {
checkMutable("tokenize");
List<String> options = new ArrayList<>();
try {
@@ -708,13 +708,13 @@
} catch (TokenizationException e) {
throw new EvalException(null, e.getMessage() + " while tokenizing '" + optionString + "'");
}
- return SkylarkList.createImmutable(options);
+ return Sequence.createImmutable(options);
}
@Override
public String expand(
@Nullable String expression,
- SkylarkList<?> artifacts, // <Artifact>
+ Sequence<?> artifacts, // <Artifact>
Label labelResolver)
throws EvalException {
checkMutable("expand");
@@ -799,7 +799,7 @@
}
@Override
- public boolean checkPlaceholders(String template, SkylarkList<?> allowedPlaceholders) // <String>
+ public boolean checkPlaceholders(String template, Sequence<?> allowedPlaceholders) // <String>
throws EvalException {
checkMutable("check_placeholders");
List<String> actualPlaceHolders = new LinkedList<>();
@@ -877,7 +877,7 @@
*/
@Override
public NoneType action(
- SkylarkList<?> outputs,
+ Sequence<?> outputs,
Object inputs,
Object executableUnchecked,
Object toolsUnchecked,
@@ -938,8 +938,7 @@
@Override
public String expandLocation(
- String input, SkylarkList<?> targets, Location loc, StarlarkThread thread)
- throws EvalException {
+ String input, Sequence<?> targets, Location loc, StarlarkThread thread) throws EvalException {
checkMutable("expand_location");
try {
return LocationExpander.withExecPaths(
@@ -988,7 +987,7 @@
@Override
public Runfiles runfiles(
- SkylarkList<?> files,
+ Sequence<?> files,
Object transitiveFiles,
Boolean collectData,
Boolean collectDefault,
@@ -1042,7 +1041,7 @@
Object attributeUnchecked,
Boolean expandLocations,
Object makeVariablesUnchecked,
- SkylarkList<?> tools,
+ Sequence<?> tools,
SkylarkDict<?, ?> labelDictUnchecked,
SkylarkDict<?, ?> executionRequirementsUnchecked,
Location loc,
@@ -1097,7 +1096,7 @@
}
@Override
- public Tuple<Object> resolveTools(SkylarkList<?> tools) throws EvalException {
+ public Tuple<Object> resolveTools(Sequence<?> tools) throws EvalException {
checkMutable("resolve_tools");
CommandHelper helper =
CommandHelper.builder(getRuleContext())
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/test/CoverageCommon.java b/src/main/java/com/google/devtools/build/lib/analysis/test/CoverageCommon.java
index 59d1854..11f954b 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/test/CoverageCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/test/CoverageCommon.java
@@ -25,7 +25,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.test.InstrumentedFilesInfoApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.util.FileType;
import com.google.devtools.build.lib.util.FileTypeSet;
@@ -40,15 +40,15 @@
@SuppressWarnings("unchecked") // Casting extensions param is verified by Starlark interpreter.
public InstrumentedFilesInfoApi instrumentedFilesInfo(
SkylarkRuleContext skylarkRuleContext,
- SkylarkList<?> sourceAttributes, // <String>
- SkylarkList<?> dependencyAttributes, // <String>
+ Sequence<?> sourceAttributes, // <String>
+ Sequence<?> dependencyAttributes, // <String>
Object extensions,
Location location)
throws EvalException {
List<String> extensionsList =
extensions == Starlark.NONE
? null
- : SkylarkList.castList((List<?>) extensions, String.class, "extensions");
+ : Sequence.castList((List<?>) extensions, String.class, "extensions");
return createInstrumentedFilesInfo(
location,
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryContext.java b/src/main/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryContext.java
index c89f705..09fa943 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryContext.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryContext.java
@@ -56,8 +56,8 @@
import com.google.devtools.build.lib.skylarkbuildapi.repository.SkylarkRepositoryContextApi;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkType;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
@@ -376,7 +376,7 @@
@Override
public SkylarkExecutionResult execute(
- SkylarkList<?> arguments, // <String> or <SkylarkPath> expected
+ Sequence<?> arguments, // <String> or <SkylarkPath> expected
Integer timeout,
SkylarkDict<?, ?> uncheckedEnvironment, // <String, String> expected
boolean quiet,
@@ -1001,8 +1001,8 @@
if (value instanceof Label) {
getPathFromLabel((Label) value);
}
- if (value instanceof SkylarkList) {
- for (Object entry : (SkylarkList) value) {
+ if (value instanceof Sequence) {
+ for (Object entry : (Sequence) value) {
if (entry instanceof Label) {
getPathFromLabel((Label) entry);
}
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryModule.java b/src/main/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryModule.java
index f6e2fcb..2b337e6 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryModule.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryModule.java
@@ -46,7 +46,7 @@
import com.google.devtools.build.lib.syntax.FuncallExpression;
import com.google.devtools.build.lib.syntax.FunctionSignature;
import com.google.devtools.build.lib.syntax.Identifier;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkUtils;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -63,7 +63,7 @@
BaseFunction implementation,
Object attrs,
Boolean local,
- SkylarkList<?> environ, // <String> expected
+ Sequence<?> environ, // <String> expected
Boolean configure,
String doc,
FuncallExpression ast,
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCcModule.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCcModule.java
index b7b3d87..e5c4565 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCcModule.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCcModule.java
@@ -33,7 +33,7 @@
import com.google.devtools.build.lib.rules.cpp.LibraryToLink;
import com.google.devtools.build.lib.skylarkbuildapi.cpp.BazelCcModuleApi;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import com.google.devtools.build.lib.syntax.Tuple;
@@ -69,21 +69,21 @@
SkylarkActionFactory skylarkActionFactoryApi,
FeatureConfigurationForStarlark skylarkFeatureConfiguration,
CcToolchainProvider skylarkCcToolchainProvider,
- SkylarkList<?> sources, // <Artifact> expected
- SkylarkList<?> publicHeaders, // <Artifact> expected
- SkylarkList<?> privateHeaders, // <Artifact> expected
- SkylarkList<?> includes, // <String> expected
- SkylarkList<?> quoteIncludes, // <String> expected
- SkylarkList<?> systemIncludes, // <String> expected
- SkylarkList<?> frameworkIncludes, // <String> expected
- SkylarkList<?> defines, // <String> expected
- SkylarkList<?> localDefines, // <String> expected
- SkylarkList<?> userCompileFlags, // <String> expected
- SkylarkList<?> ccCompilationContexts, // <CcCompilationContext> expected
+ Sequence<?> sources, // <Artifact> expected
+ Sequence<?> publicHeaders, // <Artifact> expected
+ Sequence<?> privateHeaders, // <Artifact> expected
+ Sequence<?> includes, // <String> expected
+ Sequence<?> quoteIncludes, // <String> expected
+ Sequence<?> systemIncludes, // <String> expected
+ Sequence<?> frameworkIncludes, // <String> expected
+ Sequence<?> defines, // <String> expected
+ Sequence<?> localDefines, // <String> expected
+ Sequence<?> userCompileFlags, // <String> expected
+ Sequence<?> ccCompilationContexts, // <CcCompilationContext> expected
String name,
boolean disallowPicOutputs,
boolean disallowNopicOutputs,
- SkylarkList<?> additionalInputs, // <Artifact> expected
+ Sequence<?> additionalInputs, // <Artifact> expected
Location location,
StarlarkThread thread)
throws EvalException, InterruptedException {
@@ -107,8 +107,7 @@
disallowNopicOutputs,
/* grepIncludes= */ null,
/* headersForClifDoNotUseThisParam= */ ImmutableList.of(),
- SkylarkList.createImmutable(
- additionalInputs.getContents(Artifact.class, "additional_inputs")),
+ Sequence.createImmutable(additionalInputs.getContents(Artifact.class, "additional_inputs")),
location,
/* thread= */ null);
}
@@ -119,13 +118,13 @@
FeatureConfigurationForStarlark skylarkFeatureConfiguration,
CcToolchainProvider skylarkCcToolchainProvider,
Object compilationOutputs,
- SkylarkList<?> userLinkFlags, // <String> expected
- SkylarkList<?> linkingContexts, // <CcLinkingContext> expected
+ Sequence<?> userLinkFlags, // <String> expected
+ Sequence<?> linkingContexts, // <CcLinkingContext> expected
String name,
String language,
String outputType,
boolean linkDepsStatically,
- SkylarkList<?> additionalInputs, // <Artifact> expected
+ Sequence<?> additionalInputs, // <Artifact> expected
Object grepIncludes,
Location location,
StarlarkThread thread)
@@ -154,8 +153,8 @@
}
@Override
- public CcCompilationOutputs mergeCcCompilationOutputsFromSkylark(
- SkylarkList<?> compilationOutputs) throws EvalException {
+ public CcCompilationOutputs mergeCcCompilationOutputsFromSkylark(Sequence<?> compilationOutputs)
+ throws EvalException {
CcCompilationOutputs.Builder ccCompilationOutputsBuilder = CcCompilationOutputs.builder();
for (CcCompilationOutputs ccCompilationOutputs :
compilationOutputs.getContents(CcCompilationOutputs.class, "compilation_outputs")) {
diff --git a/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java b/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java
index 6e2197d..f087893 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java
@@ -57,7 +57,7 @@
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import com.google.devtools.build.lib.syntax.BaseFunction;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.util.FileTypeSet;
import com.google.devtools.build.lib.util.StringUtil;
@@ -2057,8 +2057,8 @@
Object attributeValue = attributes.get(attributeName, attr.getType());
boolean isEmpty = false;
- if (attributeValue instanceof SkylarkList) {
- isEmpty = ((SkylarkList<?>) attributeValue).isEmpty();
+ if (attributeValue instanceof Sequence) {
+ isEmpty = ((Sequence<?>) attributeValue).isEmpty();
} else if (attributeValue instanceof List<?>) {
isEmpty = ((List<?>) attributeValue).isEmpty();
} else if (attributeValue instanceof Map<?, ?>) {
diff --git a/src/main/java/com/google/devtools/build/lib/packages/SkylarkNativeModule.java b/src/main/java/com/google/devtools/build/lib/packages/SkylarkNativeModule.java
index d56cc2a..e363753 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/SkylarkNativeModule.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/SkylarkNativeModule.java
@@ -37,8 +37,8 @@
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.Mutability;
import com.google.devtools.build.lib.syntax.NoneType;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkType;
import com.google.devtools.build.lib.syntax.SkylarkUtils;
import com.google.devtools.build.lib.syntax.Starlark;
@@ -75,9 +75,9 @@
}
@Override
- public SkylarkList<?> glob(
- SkylarkList<?> include,
- SkylarkList<?> exclude,
+ public Sequence<?> glob(
+ Sequence<?> include,
+ Sequence<?> exclude,
Integer excludeDirs,
Object allowEmptyArgument,
Location loc,
@@ -160,8 +160,8 @@
@Override
public NoneType packageGroup(
String name,
- SkylarkList<?> packagesO,
- SkylarkList<?> includesO,
+ Sequence<?> packagesO,
+ Sequence<?> includesO,
Location loc,
StarlarkThread thread)
throws EvalException {
@@ -187,11 +187,7 @@
@Override
public NoneType exportsFiles(
- SkylarkList<?> srcs,
- Object visibilityO,
- Object licensesO,
- Location loc,
- StarlarkThread thread)
+ Sequence<?> srcs, Object visibilityO, Object licensesO, Location loc, StarlarkThread thread)
throws EvalException {
SkylarkUtils.checkLoadingPhase(thread, "native.exports_files", loc);
Package.Builder pkgBuilder = getContext(thread, loc).pkgBuilder;
diff --git a/src/main/java/com/google/devtools/build/lib/packages/StarlarkBuildLibrary.java b/src/main/java/com/google/devtools/build/lib/packages/StarlarkBuildLibrary.java
index 6e89c94..4839695 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/StarlarkBuildLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/StarlarkBuildLibrary.java
@@ -28,7 +28,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkGlobalLibrary;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.NoneType;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import java.util.List;
@@ -69,14 +69,14 @@
// Both parameter below are lists of label designators
@Param(
name = "environments",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = Object.class,
positional = false,
named = true,
doc = "A list of Labels for the environments to be grouped, from the same package."),
@Param(
name = "defaults",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = Object.class,
positional = false,
named = true,
@@ -89,8 +89,8 @@
useStarlarkThread = true)
public NoneType environmentGroup(
String name,
- SkylarkList<?> environmentsList, // <Label>
- SkylarkList<?> defaultsList, // <Label>
+ Sequence<?> environmentsList, // <Label>
+ Sequence<?> defaultsList, // <Label>
Location loc,
StarlarkThread thread)
throws EvalException {
@@ -126,7 +126,7 @@
parameters = {
@Param(
name = "license_strings",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
doc = "A list of strings, the names of the licenses used.")
},
@@ -136,7 +136,7 @@
useStarlarkThread = true,
useLocation = true)
public NoneType invoke(
- SkylarkList<?> licensesList, // list of license strings
+ Sequence<?> licensesList, // list of license strings
Location loc,
StarlarkThread thread)
throws EvalException {
diff --git a/src/main/java/com/google/devtools/build/lib/packages/StructImpl.java b/src/main/java/com/google/devtools/build/lib/packages/StructImpl.java
index b061b53..46bcbb3 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/StructImpl.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/StructImpl.java
@@ -27,8 +27,8 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.Printer;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkType;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -246,8 +246,8 @@
private void printProtoTextMessage(
String key, Object value, StringBuilder sb, int indent, Location loc) throws EvalException {
- if (value instanceof SkylarkList) {
- for (Object item : ((SkylarkList) value)) {
+ if (value instanceof Sequence) {
+ for (Object item : ((Sequence) value)) {
// TODO(bazel-team): There should be some constraint on the fields of the structs
// in the same list but we ignore that for now.
printProtoTextMessage(key, item, sb, indent, loc, "list element in struct field");
diff --git a/src/main/java/com/google/devtools/build/lib/packages/Type.java b/src/main/java/com/google/devtools/build/lib/packages/Type.java
index 32b70bf..04af9bc 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/Type.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/Type.java
@@ -25,7 +25,7 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.Printer;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.util.LoggingUtil;
import com.google.devtools.build.lib.util.StringCanonicalizer;
import java.util.ArrayList;
@@ -672,8 +672,8 @@
public List<Object> convert(Object x, Object what, Object context)
throws ConversionException {
// TODO(adonovan): converge on EvalUtils.toIterable.
- if (x instanceof SkylarkList) {
- return ((SkylarkList) x).getImmutableList();
+ if (x instanceof Sequence) {
+ return ((Sequence) x).getImmutableList();
} else if (x instanceof List) {
return (List<Object>) x;
} else if (x instanceof Iterable) {
diff --git a/src/main/java/com/google/devtools/build/lib/packages/WorkspaceGlobals.java b/src/main/java/com/google/devtools/build/lib/packages/WorkspaceGlobals.java
index 36b12c6..854e99c 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/WorkspaceGlobals.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/WorkspaceGlobals.java
@@ -31,8 +31,8 @@
import com.google.devtools.build.lib.skylarkbuildapi.WorkspaceGlobalsApi;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.NoneType;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import com.google.devtools.build.lib.vfs.PathFragment;
import java.util.List;
@@ -106,7 +106,7 @@
}
private void parseManagedDirectories(
- Map<String, ?> managedDirectories, // <String, SkylarkList<String>>
+ Map<String, ?> managedDirectories, // <String, Sequence<String>>
Location loc)
throws EvalException {
Map<PathFragment, String> nonNormalizedPathsMap = Maps.newHashMap();
@@ -158,14 +158,14 @@
private static List<PathFragment> getManagedDirectoriesPaths(
Object directoriesList, Location location, Map<PathFragment, String> nonNormalizedPathsMap)
throws EvalException {
- if (!(directoriesList instanceof SkylarkList)) {
+ if (!(directoriesList instanceof Sequence)) {
throw new EvalException(
location,
"managed_directories attribute value should be of the type attr.string_list_dict(),"
+ " mapping repository name to the list of managed directories.");
}
List<PathFragment> result = Lists.newArrayList();
- for (Object obj : (SkylarkList) directoriesList) {
+ for (Object obj : (Sequence) directoriesList) {
if (!(obj instanceof String)) {
throw new EvalException(
location,
@@ -221,7 +221,7 @@
@Override
public NoneType registerExecutionPlatforms(
- SkylarkList<?> platformLabels, Location location, StarlarkThread thread)
+ Sequence<?> platformLabels, Location location, StarlarkThread thread)
throws EvalException, InterruptedException {
// Add to the package definition for later.
Package.Builder builder = PackageFactory.getContext(thread, location).pkgBuilder;
@@ -232,7 +232,7 @@
@Override
public NoneType registerToolchains(
- SkylarkList<?> toolchainLabels, Location location, StarlarkThread thread)
+ Sequence<?> toolchainLabels, Location location, StarlarkThread thread)
throws EvalException, InterruptedException {
// Add to the package definition for later.
Package.Builder builder = PackageFactory.getContext(thread, location).pkgBuilder;
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidIdeInfoProvider.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidIdeInfoProvider.java
index 8869bb7..196f4dc 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidIdeInfoProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidIdeInfoProvider.java
@@ -28,8 +28,8 @@
import com.google.devtools.build.lib.rules.java.JavaRuleOutputJarsProvider.OutputJar;
import com.google.devtools.build.lib.skylarkbuildapi.android.AndroidIdeInfoProviderApi;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import java.util.Collection;
import java.util.LinkedHashSet;
@@ -322,8 +322,8 @@
Object manifest,
Object generatedManifest,
Object idlImportRoot,
- SkylarkList<?> idlSrcs, // <Artifact>
- SkylarkList<?> idlGeneratedJavaFiles, // <Artifact>
+ Sequence<?> idlSrcs, // <Artifact>
+ Sequence<?> idlGeneratedJavaFiles, // <Artifact>
Object idlSourceJar,
Object idlClassJar,
boolean definesAndroidResources,
@@ -331,7 +331,7 @@
Object resourceApk,
Object signedApk,
Object aar,
- SkylarkList<?> apksUnderTest, // <Artifact>
+ Sequence<?> apksUnderTest, // <Artifact>
SkylarkDict<?, ?> nativeLibs) // <String, SkylarkNestedSet>
throws EvalException {
Map<String, SkylarkNestedSet> nativeLibsMap =
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidProguardInfo.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidProguardInfo.java
index 21cef79..355a028 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidProguardInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidProguardInfo.java
@@ -21,7 +21,7 @@
import com.google.devtools.build.lib.rules.java.ProguardLibrary;
import com.google.devtools.build.lib.skylarkbuildapi.android.AndroidProguardInfoApi;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
/**
* A target that can provide local proguard specifications, returned by the {@link
@@ -55,7 +55,7 @@
}
@Override
- public AndroidProguardInfo createInfo(SkylarkList<?> localProguardSpecs) // <Artifact>
+ public AndroidProguardInfo createInfo(Sequence<?> localProguardSpecs) // <Artifact>
throws EvalException {
return new AndroidProguardInfo(
ImmutableList.copyOf(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSkylarkData.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSkylarkData.java
index 79a09f6..0a9c333 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSkylarkData.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSkylarkData.java
@@ -43,8 +43,8 @@
import com.google.devtools.build.lib.skylarkbuildapi.android.AndroidBinaryDataSettingsApi;
import com.google.devtools.build.lib.skylarkbuildapi.android.AndroidDataProcessingApi;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -72,7 +72,7 @@
@Override
public AndroidAssetsInfo assetsFromDeps(
- SkylarkList<?> deps, // <AndroidAssetsInfo>
+ Sequence<?> deps, // <AndroidAssetsInfo>
boolean neverlink,
StarlarkThread thread)
throws EvalException {
@@ -86,8 +86,8 @@
@Override
public AndroidResourcesInfo resourcesFromDeps(
AndroidDataContext ctx,
- SkylarkList<?> deps, // <AndroidResourcesInfo>
- SkylarkList<?> assets, // <AndroidAssetsInfo>
+ Sequence<?> deps, // <AndroidResourcesInfo>
+ Sequence<?> assets, // <AndroidAssetsInfo>
boolean neverlink,
String customPackage,
Location location,
@@ -139,7 +139,7 @@
AndroidDataContext ctx,
Object assets,
Object assetsDir,
- SkylarkList<?> deps, // <AndroidAssetsInfo>
+ Sequence<?> deps, // <AndroidAssetsInfo>
boolean neverlink,
Location location,
StarlarkThread thread)
@@ -166,8 +166,8 @@
public ValidatedAndroidResources mergeRes(
AndroidDataContext ctx,
AndroidManifestInfo manifest,
- SkylarkList<?> resources, // <ConfiguredTarget>
- SkylarkList<?> deps, // <AndroidResourcesInfo>
+ Sequence<?> resources, // <ConfiguredTarget>
+ Sequence<?> deps, // <AndroidResourcesInfo>
boolean neverlink,
boolean enableDataBinding,
Location location,
@@ -197,8 +197,8 @@
public SkylarkDict<Provider, NativeInfo> mergeResources(
AndroidDataContext ctx,
AndroidManifestInfo manifest,
- SkylarkList<?> resources, // <ConfiguredTarget>
- SkylarkList<?> deps, // <AndroidResourcesInfo>
+ Sequence<?> resources, // <ConfiguredTarget>
+ Sequence<?> deps, // <AndroidResourcesInfo>
boolean neverlink,
boolean enableDataBinding,
Location location,
@@ -222,8 +222,8 @@
AndroidResourcesInfo resourcesInfo,
AndroidAssetsInfo assetsInfo,
Artifact libraryClassJar,
- SkylarkList<?> localProguardSpecs, // <Artifact>
- SkylarkList<?> deps, // <AndroidLibraryAarInfo>
+ Sequence<?> localProguardSpecs, // <Artifact>
+ Sequence<?> deps, // <AndroidLibraryAarInfo>
boolean neverlink)
throws EvalException, InterruptedException {
if (neverlink) {
@@ -276,7 +276,7 @@
SpecialArtifact resources,
SpecialArtifact assets,
Artifact androidManifestArtifact,
- SkylarkList<?> deps) // <ConfiguredTarget>
+ Sequence<?> deps) // <ConfiguredTarget>
throws InterruptedException, EvalException {
List<ConfiguredTarget> depsTargets = deps.getContents(ConfiguredTarget.class, "deps");
AndroidAaptVersion aaptVersion = getAndroidAaptVersionForLibrary(ctx);
@@ -309,14 +309,14 @@
public SkylarkDict<Provider, NativeInfo> processLocalTestData(
AndroidDataContext ctx,
Object manifest,
- SkylarkList<?> resources, // <ConfiguredTarget>
+ Sequence<?> resources, // <ConfiguredTarget>
Object assets,
Object assetsDir,
Object customPackage,
String aaptVersionString,
SkylarkDict<?, ?> manifestValues, // <String, String>
- SkylarkList<?> deps, // <ConfiguredTarget>
- SkylarkList<?> noCompressExtensions, // <String>
+ Sequence<?> deps, // <ConfiguredTarget>
+ Sequence<?> noCompressExtensions, // <String>
Location location,
StarlarkThread thread)
throws InterruptedException, EvalException {
@@ -388,9 +388,9 @@
public BinaryDataSettings makeBinarySettings(
AndroidDataContext ctx,
Object shrinkResources,
- SkylarkList<?> resourceConfigurationFilters, // <String>
- SkylarkList<?> densities, // <String>
- SkylarkList<?> noCompressExtensions, // <String>
+ Sequence<?> resourceConfigurationFilters, // <String>
+ Sequence<?> densities, // <String>
+ Sequence<?> noCompressExtensions, // <String>
String aaptVersionString,
Location location,
StarlarkThread thread)
@@ -434,9 +434,9 @@
return makeBinarySettings(
ctx,
Starlark.NONE,
- SkylarkList.createImmutable(ImmutableList.of()),
- SkylarkList.createImmutable(ImmutableList.of()),
- SkylarkList.createImmutable(ImmutableList.of()),
+ Sequence.createImmutable(ImmutableList.of()),
+ Sequence.createImmutable(ImmutableList.of()),
+ Sequence.createImmutable(ImmutableList.of()),
"auto",
location,
thread);
@@ -463,13 +463,13 @@
@Override
public AndroidBinaryDataInfo processBinaryData(
AndroidDataContext ctx,
- SkylarkList<?> resources,
+ Sequence<?> resources,
Object assets,
Object assetsDir,
Object manifest,
Object customPackage,
SkylarkDict<?, ?> manifestValues, // <String, String>
- SkylarkList<?> deps, // <ConfiguredTarget>
+ Sequence<?> deps, // <ConfiguredTarget>
String manifestMerger,
Object maybeSettings,
boolean crunchPng,
@@ -564,9 +564,9 @@
Artifact proguardOutputJar,
Artifact proguardMapping,
Object maybeSettings,
- SkylarkList<?> deps, // <ConfiguredTarget>
- SkylarkList<?> localProguardSpecs, // <ConfiguredTarget>
- SkylarkList<?> extraProguardSpecs, // <ConfiguredTarget>
+ Sequence<?> deps, // <ConfiguredTarget>
+ Sequence<?> localProguardSpecs, // <ConfiguredTarget>
+ Sequence<?> extraProguardSpecs, // <ConfiguredTarget>
Location location,
StarlarkThread thread)
throws EvalException, InterruptedException {
@@ -718,17 +718,17 @@
/**
* Converts a "Noneable" Object passed by Skylark to a List of the appropriate type.
*
- * <p>This first calls {@link #fromNoneable(Object, Class)} to get a SkylarkList<?>, then safely
+ * <p>This first calls {@link #fromNoneable(Object, Class)} to get a Sequence<?>, then safely
* casts it to a list with the appropriate generic.
*/
@Nullable
public static <T> List<T> listFromNoneable(Object object, Class<T> clazz) throws EvalException {
- SkylarkList<?> asList = fromNoneable(object, SkylarkList.class);
+ Sequence<?> asList = fromNoneable(object, Sequence.class);
if (asList == null) {
return null;
}
- return SkylarkList.castList(asList, clazz, null);
+ return Sequence.castList(asList, clazz, null);
}
private static ImmutableList<Artifact> filesFromConfiguredTargets(
@@ -754,21 +754,19 @@
.collect(ImmutableList.toImmutableList());
}
- public static <T extends NativeInfo> SkylarkList<T> getProviders(
+ public static <T extends NativeInfo> Sequence<T> getProviders(
List<ConfiguredTarget> targets, NativeProvider<T> provider) {
- return SkylarkList.createImmutable(
- targets
- .stream()
+ return Sequence.createImmutable(
+ targets.stream()
.map(target -> target.get(provider))
.filter(Objects::nonNull)
.collect(ImmutableList.toImmutableList()));
}
- protected static <T extends NativeInfo> SkylarkList<T> getProviders(
+ protected static <T extends NativeInfo> Sequence<T> getProviders(
List<ConfiguredTarget> targets, BuiltinProvider<T> provider) {
- return SkylarkList.createImmutable(
- targets
- .stream()
+ return Sequence.createImmutable(
+ targets.stream()
.map(target -> target.get(provider))
.filter(Objects::nonNull)
.collect(ImmutableList.toImmutableList()));
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ValidatedAndroidResources.java b/src/main/java/com/google/devtools/build/lib/rules/android/ValidatedAndroidResources.java
index d06e8a0..dfa8f9c 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/ValidatedAndroidResources.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/ValidatedAndroidResources.java
@@ -18,7 +18,7 @@
import com.google.devtools.build.lib.packages.RuleErrorConsumer;
import com.google.devtools.build.lib.rules.android.AndroidConfiguration.AndroidAaptVersion;
import com.google.devtools.build.lib.skylarkbuildapi.android.ValidatedAndroidDataApi;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@@ -178,8 +178,8 @@
}
@Override
- public SkylarkList<Artifact> getResourcesList() {
- return SkylarkList.createImmutable(getResources());
+ public Sequence<Artifact> getResourcesList() {
+ return Sequence.createImmutable(getResources());
}
public ValidatedAndroidResources filter(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV2Provider.java b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV2Provider.java
index d416d5c..1462874 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV2Provider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/DataBindingV2Provider.java
@@ -23,7 +23,7 @@
import com.google.devtools.build.lib.packages.NativeInfo;
import com.google.devtools.build.lib.skylarkbuildapi.android.DataBindingV2ProviderApi;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import javax.annotation.Nullable;
/**
@@ -168,8 +168,8 @@
Object brFile,
Object label,
Object javaPackage,
- SkylarkList<?> databindingV2ProvidersInDeps, // <DataBindingV2Provider>
- SkylarkList<?> databindingV2ProvidersInExports) // <DataBindingV2Provider>
+ Sequence<?> databindingV2ProvidersInDeps, // <DataBindingV2Provider>
+ Sequence<?> databindingV2ProvidersInExports) // <DataBindingV2Provider>
throws EvalException {
return createProvider(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/UsesDataBindingProvider.java b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/UsesDataBindingProvider.java
index 0e72468..f90d502 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/databinding/UsesDataBindingProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/databinding/UsesDataBindingProvider.java
@@ -19,7 +19,7 @@
import com.google.devtools.build.lib.packages.NativeInfo;
import com.google.devtools.build.lib.skylarkbuildapi.android.UsesDataBindingProviderApi;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import java.util.Collection;
/**
@@ -53,7 +53,7 @@
}
@Override
- public UsesDataBindingProvider createInfo(SkylarkList<?> metadataOutputs) // <Artifact>
+ public UsesDataBindingProvider createInfo(Sequence<?> metadataOutputs) // <Artifact>
throws EvalException {
return new UsesDataBindingProvider(
metadataOutputs.getContents(Artifact.class, "metadata_outputs"));
diff --git a/src/main/java/com/google/devtools/build/lib/rules/config/ConfigGlobalLibrary.java b/src/main/java/com/google/devtools/build/lib/rules/config/ConfigGlobalLibrary.java
index 47778c0..327ca77 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/config/ConfigGlobalLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/config/ConfigGlobalLibrary.java
@@ -25,8 +25,8 @@
import com.google.devtools.build.lib.skylarkbuildapi.config.ConfigurationTransitionApi;
import com.google.devtools.build.lib.syntax.BaseFunction;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import java.util.HashSet;
@@ -43,8 +43,8 @@
@Override
public ConfigurationTransitionApi transition(
BaseFunction implementation,
- SkylarkList<?> inputs, // <String> expected
- SkylarkList<?> outputs, // <String> expected
+ Sequence<?> inputs, // <String> expected
+ Sequence<?> outputs, // <String> expected
Location location,
StarlarkThread thread)
throws EvalException {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationOutputs.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationOutputs.java
index 2591a3e..d021bab 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationOutputs.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationOutputs.java
@@ -24,7 +24,7 @@
import com.google.devtools.build.lib.events.Location;
import com.google.devtools.build.lib.skylarkbuildapi.cpp.CcCompilationOutputsApi;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import java.util.LinkedHashSet;
import java.util.Set;
@@ -103,23 +103,23 @@
}
@Override
- public SkylarkList<Artifact> getSkylarkObjectFiles(
+ public Sequence<Artifact> getSkylarkObjectFiles(
boolean usePic, Location location, StarlarkThread thread) throws EvalException {
CcCommon.checkLocationWhitelisted(
thread.getSemantics(),
location,
((Label) thread.getGlobals().getLabel()).getPackageIdentifier().toString());
- return SkylarkList.createImmutable(getObjectFiles(usePic));
+ return Sequence.createImmutable(getObjectFiles(usePic));
}
@Override
- public SkylarkList<Artifact> getSkylarkObjects(Location location) throws EvalException {
- return SkylarkList.createImmutable(getObjectFiles(/* usePic= */ false));
+ public Sequence<Artifact> getSkylarkObjects(Location location) throws EvalException {
+ return Sequence.createImmutable(getObjectFiles(/* usePic= */ false));
}
@Override
- public SkylarkList<Artifact> getSkylarkPicObjects(Location location) throws EvalException {
- return SkylarkList.createImmutable(getObjectFiles(/* usePic= */ true));
+ public Sequence<Artifact> getSkylarkPicObjects(Location location) throws EvalException {
+ return Sequence.createImmutable(getObjectFiles(/* usePic= */ true));
}
/** Returns information about bitcode object files resulting from compilation. */
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkingContext.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkingContext.java
index 248a3f1..1885077 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkingContext.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkingContext.java
@@ -31,7 +31,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.cpp.CcLinkingContextApi;
import com.google.devtools.build.lib.skylarkbuildapi.cpp.LinkerInputApi;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import com.google.devtools.build.lib.util.Fingerprint;
@@ -198,8 +198,8 @@
}
@Override
- public SkylarkList<LibraryToLink> getSkylarkLibrariesToLink(StarlarkThread thread) {
- return SkylarkList.createImmutable(getLibraries());
+ public Sequence<LibraryToLink> getSkylarkLibrariesToLink(StarlarkThread thread) {
+ return Sequence.createImmutable(getLibraries());
}
public List<LinkOptions> getUserLinkFlags() {
@@ -207,8 +207,8 @@
}
@Override
- public SkylarkList<String> getSkylarkUserLinkFlags() {
- return SkylarkList.createImmutable(
+ public Sequence<String> getSkylarkUserLinkFlags() {
+ return Sequence.createImmutable(
getUserLinkFlags().stream()
.map(LinkOptions::get)
.flatMap(Collection::stream)
@@ -220,8 +220,8 @@
}
@Override
- public SkylarkList<Artifact> getSkylarkNonCodeInputs() {
- return SkylarkList.createImmutable(getNonCodeInputs());
+ public Sequence<Artifact> getSkylarkNonCodeInputs() {
+ return Sequence.createImmutable(getNonCodeInputs());
}
public List<Linkstamp> getLinkstamps() {
@@ -392,8 +392,8 @@
}
@Override
- public SkylarkList<String> getSkylarkUserLinkFlags() {
- return SkylarkList.createImmutable(getFlattenedUserLinkFlags());
+ public Sequence<String> getSkylarkUserLinkFlags() {
+ return Sequence.createImmutable(getFlattenedUserLinkFlags());
}
@Override
@@ -402,7 +402,7 @@
if (thread.getSemantics().incompatibleDepsetForLibrariesToLinkGetter()) {
return SkylarkNestedSet.of(LibraryToLink.class, getLibraries());
} else {
- return SkylarkList.createImmutable(getLibraries().toList());
+ return Sequence.createImmutable(getLibraries().toList());
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java
index 0e36feb..15b11a0 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcModule.java
@@ -60,8 +60,8 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.NoneType;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -125,8 +125,8 @@
public FeatureConfigurationForStarlark configureFeatures(
Object ruleContextOrNone,
CcToolchainProvider toolchain, // <String> expected
- SkylarkList<?> requestedFeatures, // <String> expected
- SkylarkList<?> unsupportedFeatures)
+ Sequence<?> requestedFeatures, // <String> expected
+ Sequence<?> unsupportedFeatures)
throws EvalException {
SkylarkRuleContext ruleContext = nullIfNone(ruleContextOrNone, SkylarkRuleContext.class);
if (ruleContext == null
@@ -166,9 +166,9 @@
}
@Override
- public SkylarkList<String> getExecutionRequirements(
+ public Sequence<String> getExecutionRequirements(
FeatureConfigurationForStarlark featureConfiguration, String actionName) {
- return SkylarkList.createImmutable(
+ return Sequence.createImmutable(
featureConfiguration.getFeatureConfiguration().getToolRequirementsForAction(actionName));
}
@@ -185,12 +185,12 @@
}
@Override
- public SkylarkList<String> getCommandLine(
+ public Sequence<String> getCommandLine(
FeatureConfigurationForStarlark featureConfiguration,
String actionName,
CcToolchainVariables variables)
throws EvalException {
- return SkylarkList.createImmutable(
+ return Sequence.createImmutable(
featureConfiguration.getFeatureConfiguration().getCommandLine(actionName, variables));
}
@@ -335,10 +335,10 @@
}
}
- /** Converts an object that can be either SkylarkList, or None into ImmutableList. */
+ /** Converts an object that can be either Sequence, or None into ImmutableList. */
protected ImmutableList<String> asStringImmutableList(Object o) {
- SkylarkList<String> skylarkList =
- convertFromNoneable(o, /* defaultValue= */ (SkylarkList<String>) null);
+ Sequence<String> skylarkList =
+ convertFromNoneable(o, /* defaultValue= */ (Sequence<String>) null);
if (skylarkList != null) {
return skylarkList.getImmutableList();
} else {
@@ -346,9 +346,9 @@
}
}
- /** Converts an object that represents user flags as either SkylarkList or None into Iterable. */
+ /** Converts an object that represents user flags as either Sequence or None into Iterable. */
protected Iterable<String> userFlagsToIterable(Object o) throws EvalException {
- if (o instanceof SkylarkList) {
+ if (o instanceof Sequence) {
return asStringImmutableList(o);
} else if (o instanceof NoneType) {
return ImmutableList.of();
@@ -508,7 +508,7 @@
}
@Override
- public CcInfo mergeCcInfos(SkylarkList<?> ccInfos) throws EvalException {
+ public CcInfo mergeCcInfos(Sequence<?> ccInfos) throws EvalException {
return CcInfo.merge(ccInfos.getContents(CcInfo.class, /* description= */ null));
}
@@ -610,10 +610,9 @@
throws EvalException {
if (EvalUtils.isNullOrNone(linkerInputs)) {
@SuppressWarnings("unchecked")
- SkylarkList<LibraryToLink> librariesToLink =
- nullIfNone(librariesToLinkObject, SkylarkList.class);
+ Sequence<LibraryToLink> librariesToLink = nullIfNone(librariesToLinkObject, Sequence.class);
@SuppressWarnings("unchecked")
- SkylarkList<String> userLinkFlags = nullIfNone(userLinkFlagsObject, SkylarkList.class);
+ Sequence<String> userLinkFlags = nullIfNone(userLinkFlagsObject, Sequence.class);
if (librariesToLink != null || userLinkFlags != null) {
CcLinkingContext.Builder ccLinkingContextBuilder = CcLinkingContext.builder();
@@ -630,7 +629,7 @@
BazelStarlarkContext.from(thread).getSymbolGenerator())));
}
@SuppressWarnings("unchecked")
- SkylarkList<String> nonCodeInputs = nullIfNone(nonCodeInputsObject, SkylarkList.class);
+ Sequence<String> nonCodeInputs = nullIfNone(nonCodeInputsObject, Sequence.class);
if (nonCodeInputs != null) {
ccLinkingContextBuilder.addNonCodeInputs(
nonCodeInputs.getContents(Artifact.class, "additional_inputs"));
@@ -646,12 +645,11 @@
linkerInputs, CcLinkingContext.LinkerInput.class, "linker_inputs"));
@SuppressWarnings("unchecked")
- SkylarkList<LibraryToLink> librariesToLink =
- nullIfNone(librariesToLinkObject, SkylarkList.class);
+ Sequence<LibraryToLink> librariesToLink = nullIfNone(librariesToLinkObject, Sequence.class);
@SuppressWarnings("unchecked")
- SkylarkList<String> userLinkFlags = nullIfNone(userLinkFlagsObject, SkylarkList.class);
+ Sequence<String> userLinkFlags = nullIfNone(userLinkFlagsObject, Sequence.class);
@SuppressWarnings("unchecked")
- SkylarkList<String> nonCodeInputs = nullIfNone(nonCodeInputsObject, SkylarkList.class);
+ Sequence<String> nonCodeInputs = nullIfNone(nonCodeInputsObject, Sequence.class);
if (librariesToLink != null || userLinkFlags != null || nonCodeInputs != null) {
throw new EvalException(
@@ -673,8 +671,8 @@
/** Converts an object that can be the either SkylarkNestedSet or None into NestedSet. */
@SuppressWarnings("unchecked")
protected Object skylarkListToSkylarkNestedSet(Object o) throws EvalException {
- if (o instanceof SkylarkList) {
- SkylarkList<String> list = (SkylarkList<String>) o;
+ if (o instanceof Sequence) {
+ Sequence<String> list = (Sequence<String>) o;
SkylarkNestedSet.Builder builder =
SkylarkNestedSet.builder(Order.STABLE_ORDER, Location.BUILTIN);
for (Object entry : list) {
@@ -685,7 +683,7 @@
return o;
}
- /** Converts None, or a SkylarkList, or a SkylarkNestedSet to a NestedSet. */
+ /** Converts None, or a Sequence, or a SkylarkNestedSet to a NestedSet. */
@SuppressWarnings("unchecked")
private static <T> NestedSet<T> convertToNestedSet(Object o, Class<T> type, String fieldName)
throws EvalException {
@@ -694,16 +692,16 @@
}
return o instanceof SkylarkNestedSet
? ((SkylarkNestedSet) o).getSetFromParam(type, fieldName)
- : NestedSetBuilder.wrap(Order.COMPILE_ORDER, (SkylarkList<T>) o);
+ : NestedSetBuilder.wrap(Order.COMPILE_ORDER, (Sequence<T>) o);
}
@Override
public CcToolchainConfigInfo ccToolchainConfigInfoFromSkylark(
SkylarkRuleContext skylarkRuleContext,
- SkylarkList<?> features, // <SkylarkInfo> expected
- SkylarkList<?> actionConfigs, // <SkylarkInfo> expected
- SkylarkList<?> artifactNamePatterns, // <SkylarkInfo> expected
- SkylarkList<?> cxxBuiltInIncludeDirectoriesUnchecked, // <String> expected
+ Sequence<?> features, // <SkylarkInfo> expected
+ Sequence<?> actionConfigs, // <SkylarkInfo> expected
+ Sequence<?> artifactNamePatterns, // <SkylarkInfo> expected
+ Sequence<?> cxxBuiltInIncludeDirectoriesUnchecked, // <String> expected
String toolchainIdentifier,
String hostSystemName,
String targetSystemName,
@@ -712,8 +710,8 @@
String compiler,
String abiVersion,
String abiLibcVersion,
- SkylarkList<?> toolPaths, // <SkylarkInfo> expected
- SkylarkList<?> makeVariables, // <SkylarkInfo> expected
+ Sequence<?> toolPaths, // <SkylarkInfo> expected
+ Sequence<?> makeVariables, // <SkylarkInfo> expected
Object builtinSysroot,
Object ccTargetOs)
throws EvalException {
@@ -1331,7 +1329,7 @@
/** Returns a list of strings from a field of a {@link SkylarkInfo}. */
private static ImmutableList<String> getStringListFromSkylarkProviderField(
SkylarkInfo provider, String fieldName) throws EvalException {
- return SkylarkList.castSkylarkListOrNoneToList(
+ return Sequence.castSkylarkListOrNoneToList(
provider.getValueOrNull(fieldName), String.class, fieldName)
.stream()
.collect(ImmutableList.toImmutableList());
@@ -1340,7 +1338,7 @@
/** Returns a set of strings from a field of a {@link SkylarkInfo}. */
private static ImmutableSet<String> getStringSetFromSkylarkProviderField(
SkylarkInfo provider, String fieldName) throws EvalException {
- return SkylarkList.castSkylarkListOrNoneToList(
+ return Sequence.castSkylarkListOrNoneToList(
provider.getValueOrNull(fieldName), String.class, fieldName)
.stream()
.collect(ImmutableSet.toImmutableSet());
@@ -1349,7 +1347,7 @@
/** Returns a list of SkylarkInfo providers from a field of a {@link SkylarkInfo}. */
private static ImmutableList<SkylarkInfo> getSkylarkProviderListFromSkylarkField(
SkylarkInfo provider, String fieldName) throws EvalException {
- return SkylarkList.castSkylarkListOrNoneToList(
+ return Sequence.castSkylarkListOrNoneToList(
provider.getValueOrNull(fieldName), SkylarkInfo.class, fieldName)
.stream()
.collect(ImmutableList.toImmutableList());
@@ -1396,12 +1394,12 @@
FeatureConfigurationForStarlark skylarkFeatureConfiguration,
CcToolchainProvider skylarkCcToolchainProvider,
CcCompilationOutputs compilationOutputs,
- SkylarkList<?> userLinkFlags, // <String> expected
- SkylarkList<?> linkingContexts, // <CcLinkingContext> expected
+ Sequence<?> userLinkFlags, // <String> expected
+ Sequence<?> linkingContexts, // <CcLinkingContext> expected
String name,
String language,
boolean alwayslink, // <Artifact> expected
- SkylarkList<?> additionalInputs,
+ Sequence<?> additionalInputs,
boolean disallowStaticLibraries,
boolean disallowDynamicLibraries,
Object grepIncludes,
@@ -1520,23 +1518,23 @@
SkylarkActionFactory skylarkActionFactoryApi,
FeatureConfigurationForStarlark skylarkFeatureConfiguration,
CcToolchainProvider skylarkCcToolchainProvider,
- SkylarkList<?> sourcesUnchecked, // <Artifact> expected
- SkylarkList<?> publicHeadersUnchecked, // <Artifact> expected
- SkylarkList<?> privateHeadersUnchecked, // <Artifact> expected
- SkylarkList<?> includes, // <String> expected
- SkylarkList<?> quoteIncludes, // <String> expected
- SkylarkList<?> systemIncludes, // <String> expected
- SkylarkList<?> frameworkIncludes, // <String> expected
- SkylarkList<?> defines, // <String> expected
- SkylarkList<?> localDefines, // <String> expected
- SkylarkList<?> userCompileFlags, // <String> expected
- SkylarkList<?> ccCompilationContexts, // <CcCompilationContext> expected
+ Sequence<?> sourcesUnchecked, // <Artifact> expected
+ Sequence<?> publicHeadersUnchecked, // <Artifact> expected
+ Sequence<?> privateHeadersUnchecked, // <Artifact> expected
+ Sequence<?> includes, // <String> expected
+ Sequence<?> quoteIncludes, // <String> expected
+ Sequence<?> systemIncludes, // <String> expected
+ Sequence<?> frameworkIncludes, // <String> expected
+ Sequence<?> defines, // <String> expected
+ Sequence<?> localDefines, // <String> expected
+ Sequence<?> userCompileFlags, // <String> expected
+ Sequence<?> ccCompilationContexts, // <CcCompilationContext> expected
String name,
boolean disallowPicOutputs,
boolean disallowNopicOutputs,
Artifact grepIncludes,
List<Artifact> headersForClifDoNotUseThisParam,
- SkylarkList<?> additionalInputs,
+ Sequence<?> additionalInputs,
Location location,
@Nullable StarlarkThread thread)
throws EvalException, InterruptedException {
@@ -1636,13 +1634,13 @@
FeatureConfigurationForStarlark skylarkFeatureConfiguration,
CcToolchainProvider skylarkCcToolchainProvider,
CcCompilationOutputs compilationOutputs,
- SkylarkList<?> userLinkFlags,
- SkylarkList<?> linkingContexts,
+ Sequence<?> userLinkFlags,
+ Sequence<?> linkingContexts,
String name,
String language,
String outputType,
boolean linkDepsStatically,
- SkylarkList<?> additionalInputs,
+ Sequence<?> additionalInputs,
Object grepIncludes,
Location location,
StarlarkThread thread)
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/GoogleLegacyStubs.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/GoogleLegacyStubs.java
index ac31b17..5c90696 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/GoogleLegacyStubs.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/GoogleLegacyStubs.java
@@ -38,7 +38,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.go.GoPackageInfoApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Tuple;
@@ -81,8 +81,8 @@
CcToolchainProviderApi<FeatureConfigurationApi> ccToolchain,
FileApi ccFile,
FileApi headerFile,
- SkylarkList<?> depCcCompilationContexts, // <CcCompilationContextApi>
- SkylarkList<?> targetCopts /* <String> */)
+ Sequence<?> depCcCompilationContexts, // <CcCompilationContextApi>
+ Sequence<?> targetCopts /* <String> */)
throws EvalException, InterruptedException {
return null;
}
@@ -108,10 +108,10 @@
CcCompilationContextApi wrapperCcCompilationContext,
SkylarkNestedSet swigIncludes,
FileApi swigSource,
- SkylarkList<?> subParameters, // <String>
+ Sequence<?> subParameters, // <String>
FileApi ccFile,
FileApi headerFile,
- SkylarkList<?> outputFiles, // <FileApi>
+ Sequence<?> outputFiles, // <FileApi>
Object outDir,
Object javaDir,
SkylarkNestedSet auxiliaryInputs,
@@ -136,7 +136,7 @@
WrapCcIncludeProviderApi> {
@Override
- public SkylarkList<String> getPyExtensionLinkopts(SkylarkRuleContextApi skylarkRuleContext) {
+ public Sequence<String> getPyExtensionLinkopts(SkylarkRuleContextApi skylarkRuleContext) {
return null;
}
@@ -215,8 +215,8 @@
public Tuple<FileApi> createGoCompileActions(
SkylarkRuleContextApi skylarkRuleContext,
CcToolchainProviderApi<FeatureConfigurationApi> ccToolchainProvider,
- SkylarkList<?> srcs, // <FileApi>
- SkylarkList<?> deps /* <TransitiveInfoCollectionApi> */) {
+ Sequence<?> srcs, // <FileApi>
+ Sequence<?> deps /* <TransitiveInfoCollectionApi> */) {
return null;
}
@@ -224,8 +224,8 @@
public Tuple<FileApi> createGoCompileActionsGopkg(
SkylarkRuleContextApi skylarkRuleContext,
CcToolchainProviderApi<FeatureConfigurationApi> ccToolchainProvider,
- SkylarkList<?> srcs, // <FileApi>
- SkylarkList<?> deps /* <TransitiveInfoCollectionApi> */) {
+ Sequence<?> srcs, // <FileApi>
+ Sequence<?> deps /* <TransitiveInfoCollectionApi> */) {
return null;
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/LibraryToLink.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/LibraryToLink.java
index 17e0c9c..81fb18d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/LibraryToLink.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/LibraryToLink.java
@@ -22,7 +22,7 @@
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.skylarkbuildapi.cpp.LibraryToLinkApi;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.StarlarkList;
import java.util.List;
import javax.annotation.Nullable;
@@ -66,11 +66,11 @@
@Nullable
@Override
- public SkylarkList<Artifact> getObjectFilesForStarlark() {
+ public Sequence<Artifact> getObjectFilesForStarlark() {
if (getObjectFiles() == null) {
return StarlarkList.empty();
}
- return SkylarkList.createImmutable(getObjectFiles());
+ return Sequence.createImmutable(getObjectFiles());
}
@Nullable
@@ -88,11 +88,11 @@
@Nullable
@Override
- public SkylarkList<Artifact> getPicObjectFilesForStarlark() {
+ public Sequence<Artifact> getPicObjectFilesForStarlark() {
if (getPicObjectFiles() == null) {
return StarlarkList.empty();
}
- return SkylarkList.createImmutable(getPicObjectFiles());
+ return Sequence.createImmutable(getPicObjectFiles());
}
@Nullable
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
index e5446bb..c2a5da4 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
@@ -63,7 +63,7 @@
import com.google.devtools.build.lib.rules.java.JavaPluginInfoProvider.JavaPluginInfo;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.util.Fingerprint;
import com.google.devtools.build.lib.util.LazyString;
import com.google.devtools.build.lib.view.proto.Deps;
@@ -476,9 +476,9 @@
}
@Override
- public SkylarkList<String> getSkylarkArgv() throws EvalException {
+ public Sequence<String> getSkylarkArgv() throws EvalException {
try {
- return SkylarkList.createImmutable(getArguments());
+ return Sequence.createImmutable(getArguments());
} catch (CommandLineExpansionException exception) {
throw new EvalException(Location.BUILTIN, exception);
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfo.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfo.java
index 9ef1c50..785a056 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfo.java
@@ -39,7 +39,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.java.JavaInfoApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.SkylarkType;
import com.google.devtools.build.lib.syntax.Starlark;
@@ -288,12 +288,12 @@
}
@Override
- public SkylarkList<Artifact> getSourceJars() {
+ public Sequence<Artifact> getSourceJars() {
// TODO(#4221) change return type to NestedSet<Artifact>
JavaSourceJarsProvider provider = providers.getProvider(JavaSourceJarsProvider.class);
ImmutableList<Artifact> sourceJars =
provider == null ? ImmutableList.of() : provider.getSourceJars();
- return SkylarkList.createImmutable(sourceJars);
+ return Sequence.createImmutable(sourceJars);
}
@Override
@@ -312,8 +312,8 @@
}
@Override
- public SkylarkList<Artifact> getRuntimeOutputJars() {
- return SkylarkList.createImmutable(getDirectRuntimeJars());
+ public Sequence<Artifact> getRuntimeOutputJars() {
+ return Sequence.createImmutable(getDirectRuntimeJars());
}
public ImmutableList<Artifact> getDirectRuntimeJars() {
@@ -414,9 +414,9 @@
Object compileJarApi,
Object sourceJarApi,
Boolean neverlink,
- SkylarkList<?> deps,
- SkylarkList<?> runtimeDeps,
- SkylarkList<?> exports,
+ Sequence<?> deps,
+ Sequence<?> runtimeDeps,
+ Sequence<?> exports,
Object jdepsApi,
Location loc,
StarlarkThread thread)
@@ -434,9 +434,9 @@
compileJar,
sourceJar,
neverlink,
- (SkylarkList<JavaInfo>) deps,
- (SkylarkList<JavaInfo>) runtimeDeps,
- (SkylarkList<JavaInfo>) exports,
+ (Sequence<JavaInfo>) deps,
+ (Sequence<JavaInfo>) runtimeDeps,
+ (Sequence<JavaInfo>) exports,
jdeps,
loc);
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfoBuildHelper.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfoBuildHelper.java
index 1eb828e..74a9ef8 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfoBuildHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaInfoBuildHelper.java
@@ -40,7 +40,7 @@
import com.google.devtools.build.lib.rules.java.JavaCompilationArgsProvider.ClasspathType;
import com.google.devtools.build.lib.shell.ShellUtils;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import com.google.devtools.build.lib.vfs.FileSystemUtils;
@@ -81,9 +81,9 @@
Artifact compileJar,
@Nullable Artifact sourceJar,
Boolean neverlink,
- SkylarkList<JavaInfo> compileTimeDeps,
- SkylarkList<JavaInfo> runtimeDeps,
- SkylarkList<JavaInfo> exports,
+ Sequence<JavaInfo> compileTimeDeps,
+ Sequence<JavaInfo> runtimeDeps,
+ Sequence<JavaInfo> exports,
@Nullable Artifact jdeps,
Location location) {
compileJar = compileJar != null ? compileJar : outputJar;
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuleOutputJarsProvider.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuleOutputJarsProvider.java
index 755f08d..c19ffa0 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuleOutputJarsProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaRuleOutputJarsProvider.java
@@ -26,7 +26,7 @@
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.skylarkbuildapi.java.JavaRuleOutputJarsProviderApi;
import com.google.devtools.build.lib.skylarkbuildapi.java.OutputJarApi;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import java.util.Collection;
import java.util.stream.Collectors;
import javax.annotation.Nullable;
@@ -87,8 +87,8 @@
@Nullable
@Override
- public SkylarkList<Artifact> getSrcJarsSkylark() {
- return SkylarkList.createImmutable(srcJars);
+ public Sequence<Artifact> getSrcJarsSkylark() {
+ return Sequence.createImmutable(srcJars);
}
public Iterable<Artifact> getSrcJars() {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java
index b0c63c9..821d4bf 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java
@@ -26,7 +26,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.java.JavaCommonApi;
import com.google.devtools.build.lib.skylarkbuildapi.java.JavaToolchainSkylarkApiProviderApi;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
@@ -55,22 +55,22 @@
@Override
public JavaInfo createJavaCompileAction(
SkylarkRuleContext skylarkRuleContext,
- SkylarkList<?> sourceJars, // <Artifact> expected
- SkylarkList<?> sourceFiles, // <Artifact> expected
+ Sequence<?> sourceJars, // <Artifact> expected
+ Sequence<?> sourceFiles, // <Artifact> expected
Artifact outputJar,
Object outputSourceJar,
- SkylarkList<?> javacOpts, // <String> expected
- SkylarkList<?> deps, // <JavaInfo> expected
- SkylarkList<?> exports, // <JavaInfo> expected
- SkylarkList<?> plugins, // <JavaInfo> expected
- SkylarkList<?> exportedPlugins, // <JavaInfo> expected
- SkylarkList<?> annotationProcessorAdditionalInputs, // <Artifact> expected
- SkylarkList<?> annotationProcessorAdditionalOutputs, // <Artifact> expected
+ Sequence<?> javacOpts, // <String> expected
+ Sequence<?> deps, // <JavaInfo> expected
+ Sequence<?> exports, // <JavaInfo> expected
+ Sequence<?> plugins, // <JavaInfo> expected
+ Sequence<?> exportedPlugins, // <JavaInfo> expected
+ Sequence<?> annotationProcessorAdditionalInputs, // <Artifact> expected
+ Sequence<?> annotationProcessorAdditionalOutputs, // <Artifact> expected
String strictDepsMode,
JavaToolchainProvider javaToolchain,
JavaRuntimeInfo hostJavabase,
- SkylarkList<?> sourcepathEntries, // <Artifact> expected
- SkylarkList<?> resources, // <Artifact> expected
+ Sequence<?> sourcepathEntries, // <Artifact> expected
+ Sequence<?> resources, // <Artifact> expected
Boolean neverlink,
Location location,
StarlarkThread thread)
@@ -138,8 +138,8 @@
public Artifact packSources(
SkylarkActionFactory actions,
Artifact outputJar,
- SkylarkList<?> sourceFiles, // <Artifact> expected.
- SkylarkList<?> sourceJars, // <Artifact> expected.
+ Sequence<?> sourceFiles, // <Artifact> expected.
+ Sequence<?> sourceJars, // <Artifact> expected.
JavaToolchainProvider javaToolchain,
JavaRuntimeInfo hostJavabase,
Location location,
@@ -167,7 +167,7 @@
}
@Override
- public JavaInfo mergeJavaProviders(SkylarkList<?> providers /* <JavaInfo> expected. */)
+ public JavaInfo mergeJavaProviders(Sequence<?> providers /* <JavaInfo> expected. */)
throws EvalException {
return JavaInfo.merge(providers.getContents(JavaInfo.class, "providers"));
}
@@ -212,8 +212,7 @@
}
@Override
- public JavaInfo addConstraints(JavaInfo javaInfo, SkylarkList<?> constraints)
- throws EvalException {
+ public JavaInfo addConstraints(JavaInfo javaInfo, Sequence<?> constraints) throws EvalException {
// No implementation in Bazel. This method not callable in Starlark except through
// (discouraged) use of --experimental_google_legacy_api.
return null;
@@ -235,7 +234,7 @@
@Override
public JavaInfo addCompileTimeJavaDependencyArtifacts(
- JavaInfo javaInfo, SkylarkList<?> compileTimeJavaDependencyArtifacts) throws EvalException {
+ JavaInfo javaInfo, Sequence<?> compileTimeJavaDependencyArtifacts) throws EvalException {
// No implementation in Bazel. This method not callable in Starlark except through
// (discouraged) use of --experimental_google_legacy_api.
return null;
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainProvider.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainProvider.java
index f31af5e..bad7896 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaToolchainProvider.java
@@ -35,7 +35,7 @@
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import com.google.devtools.build.lib.skylarkbuildapi.FileApi;
import com.google.devtools.build.lib.skylarkbuildapi.java.JavaToolchainSkylarkApiProviderApi;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import java.util.Iterator;
import javax.annotation.Nullable;
@@ -414,8 +414,8 @@
}
@Override
- public SkylarkList<String> getSkylarkJvmOptions() {
- return SkylarkList.createImmutable(getJvmOptions());
+ public Sequence<String> getSkylarkJvmOptions() {
+ return Sequence.createImmutable(getJvmOptions());
}
@Override
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/MessageBundleInfo.java b/src/main/java/com/google/devtools/build/lib/rules/java/MessageBundleInfo.java
index 9dddcc0..4e5f9fb 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/MessageBundleInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/MessageBundleInfo.java
@@ -29,7 +29,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import java.util.List;
import javax.annotation.Nullable;
@@ -55,13 +55,13 @@
doc = "The <code>MessageBundleInfo</code> constructor.",
documented = false,
parameters = {
- @Param(name = "messages", positional = false, named = true, type = SkylarkList.class),
+ @Param(name = "messages", positional = false, named = true, type = Sequence.class),
},
selfCall = true,
useLocation = true)
- public MessageBundleInfo messageBundleInfo(SkylarkList<?> messages, Location loc)
+ public MessageBundleInfo messageBundleInfo(Sequence<?> messages, Location loc)
throws EvalException {
- List<Artifact> messagesList = SkylarkList.castList(messages, Artifact.class, "messages");
+ List<Artifact> messagesList = Sequence.castList(messages, Artifact.class, "messages");
return new MessageBundleInfo(ImmutableList.copyOf(messagesList), loc);
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleSkylarkCommon.java b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleSkylarkCommon.java
index 1293981..117c433 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleSkylarkCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleSkylarkCommon.java
@@ -44,8 +44,8 @@
import com.google.devtools.build.lib.skylarkbuildapi.apple.AppleCommonApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -220,8 +220,8 @@
@Override
public StructImpl linkMultiArchBinary(
SkylarkRuleContextApi skylarkRuleContextApi,
- SkylarkList<?> extraLinkopts,
- SkylarkList<?> extraLinkInputs,
+ Sequence<?> extraLinkopts,
+ Sequence<?> extraLinkInputs,
StarlarkThread thread)
throws EvalException, InterruptedException {
SkylarkRuleContext skylarkRuleContext = (SkylarkRuleContext) skylarkRuleContextApi;
@@ -231,7 +231,7 @@
AppleBinary.linkMultiArchBinary(
ruleContext,
ImmutableList.copyOf(extraLinkopts.getContents(String.class, "extra_linkopts")),
- SkylarkList.castList(extraLinkInputs, Artifact.class, "extra_link_inputs"));
+ Sequence.castList(extraLinkInputs, Artifact.class, "extra_link_inputs"));
return createAppleBinaryOutputSkylarkStruct(appleBinaryOutput, thread);
} catch (RuleErrorException | ActionConflictException exception) {
throw new EvalException(null, exception);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java
index 2da9350..8620829 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java
@@ -41,7 +41,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.apple.ObjcProviderApi;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -424,7 +424,7 @@
}
@Override
- public SkylarkList<Artifact> directHeaders() {
+ public Sequence<Artifact> directHeaders() {
return getDirect(HEADER);
}
@@ -494,7 +494,7 @@
}
@Override
- public SkylarkList<Artifact> directModuleMaps() {
+ public Sequence<Artifact> directModuleMaps() {
return getDirect(MODULE_MAP);
}
@@ -530,7 +530,7 @@
}
@Override
- public SkylarkList<Artifact> directSources() {
+ public Sequence<Artifact> directSources() {
return getDirect(SOURCE);
}
@@ -642,11 +642,11 @@
/** All direct artifacts, bundleable files, etc. of the type specified by {@code key}. */
@SuppressWarnings({"rawtypes", "unchecked"})
- public <E> SkylarkList<E> getDirect(Key<E> key) {
+ public <E> Sequence<E> getDirect(Key<E> key) {
if (directItems.containsKey(key)) {
- return SkylarkList.createImmutable((List) directItems.get(key));
+ return Sequence.createImmutable((List) directItems.get(key));
}
- return SkylarkList.createImmutable(ImmutableList.of());
+ return Sequence.createImmutable(ImmutableList.of());
}
/**
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/ActionApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/ActionApi.java
index 52422e6..4b5bf88 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/ActionApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/ActionApi.java
@@ -19,8 +19,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import java.io.IOException;
@@ -62,17 +62,16 @@
public SkylarkNestedSet getSkylarkOutputs();
@SkylarkCallable(
- name = "argv",
- doc =
- "For actions created by <a href=\"actions.html#run\">ctx.actions.run()</a> "
- + "or <a href=\"actions.html#run_shell\">ctx.actions.run_shell()</a> an immutable "
- + "list of the arguments for the command line to be executed. Note that "
- + "for shell actions the first two arguments will be the shell path "
- + "and <code>\"-c\"</code>.",
- structField = true,
- allowReturnNones = true
- )
- public SkylarkList<String> getSkylarkArgv() throws EvalException;
+ name = "argv",
+ doc =
+ "For actions created by <a href=\"actions.html#run\">ctx.actions.run()</a> "
+ + "or <a href=\"actions.html#run_shell\">ctx.actions.run_shell()</a> an immutable "
+ + "list of the arguments for the command line to be executed. Note that "
+ + "for shell actions the first two arguments will be the shell path "
+ + "and <code>\"-c\"</code>.",
+ structField = true,
+ allowReturnNones = true)
+ public Sequence<String> getSkylarkArgv() throws EvalException;
@SkylarkCallable(
name = "args",
@@ -88,7 +87,7 @@
structField = true,
allowReturnNones = true,
enableOnlyWithFlag = FlagIdentifier.EXPERIMENTAL_ACTION_ARGS)
- public SkylarkList<CommandLineArgsApi> getStarlarkArgs() throws EvalException;
+ public Sequence<CommandLineArgsApi> getStarlarkArgs() throws EvalException;
@SkylarkCallable(
name = "content",
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/CommandLineArgsApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/CommandLineArgsApi.java
index b11389a..d0fff70 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/CommandLineArgsApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/CommandLineArgsApi.java
@@ -23,7 +23,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.BaseFunction;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
/** Command line args module. */
@@ -247,7 +247,7 @@
@Param(
name = "values",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
@ParamType(type = SkylarkNestedSet.class),
},
defaultValue = "unbound",
@@ -397,7 +397,7 @@
@Param(
name = "values",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
@ParamType(type = SkylarkNestedSet.class),
},
defaultValue = "unbound",
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkActionFactoryApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkActionFactoryApi.java
index 618bba3..df27727 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkActionFactoryApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkActionFactoryApi.java
@@ -22,8 +22,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -150,7 +150,7 @@
@Param(
name = "inputs",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
@ParamType(type = SkylarkNestedSet.class),
},
generic1 = FileApi.class,
@@ -219,7 +219,7 @@
parameters = {
@Param(
name = "outputs",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
named = true,
positional = false,
@@ -227,7 +227,7 @@
@Param(
name = "inputs",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
@ParamType(type = SkylarkNestedSet.class),
},
generic1 = FileApi.class,
@@ -266,7 +266,7 @@
@Param(
name = "tools",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
@ParamType(type = SkylarkNestedSet.class),
},
defaultValue = "unbound",
@@ -280,7 +280,7 @@
name = "arguments",
type = Object.class,
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
},
defaultValue = "[]",
named = true,
@@ -338,7 +338,7 @@
// This is technically experimental, so folks shouldn't be too attached,
// but consider renaming to be more accurate/opaque.
name = "input_manifests",
- type = SkylarkList.class,
+ type = Sequence.class,
noneable = true,
defaultValue = "None",
named = true,
@@ -349,7 +349,7 @@
},
useLocation = true)
public void run(
- SkylarkList<?> outputs,
+ Sequence<?> outputs,
Object inputs,
Object unusedInputsList,
Object executableUnchecked,
@@ -373,7 +373,7 @@
parameters = {
@Param(
name = "outputs",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
named = true,
positional = false,
@@ -381,7 +381,7 @@
@Param(
name = "inputs",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
@ParamType(type = SkylarkNestedSet.class),
},
generic1 = FileApi.class,
@@ -392,7 +392,7 @@
@Param(
name = "tools",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
@ParamType(type = SkylarkNestedSet.class),
},
generic1 = FileApi.class,
@@ -406,7 +406,7 @@
@Param(
name = "arguments",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
},
defaultValue = "[]",
named = true,
@@ -438,7 +438,7 @@
type = Object.class,
allowedTypes = {
@ParamType(type = String.class),
- @ParamType(type = SkylarkList.class, generic1 = String.class),
+ @ParamType(type = Sequence.class, generic1 = String.class),
},
named = true,
positional = false,
@@ -508,7 +508,7 @@
// This is technically experimental, so folks shouldn't be too attached,
// but consider renaming to be more accurate/opaque.
name = "input_manifests",
- type = SkylarkList.class,
+ type = Sequence.class,
noneable = true,
defaultValue = "None",
named = true,
@@ -520,7 +520,7 @@
useStarlarkSemantics = true,
useLocation = true)
public void runShell(
- SkylarkList<?> outputs,
+ Sequence<?> outputs,
Object inputs,
Object toolsUnchecked,
Object arguments,
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkAttrApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkAttrApi.java
index 9b69185..1ba3c26 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkAttrApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkAttrApi.java
@@ -23,8 +23,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.FuncallExpression;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkFunction;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -173,7 +173,7 @@
positional = false),
@Param(
name = VALUES_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = Integer.class,
defaultValue = "[]",
doc = VALUES_DOC,
@@ -186,7 +186,7 @@
Integer defaultInt,
String doc,
Boolean mandatory,
- SkylarkList<?> values,
+ Sequence<?> values,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException;
@@ -220,7 +220,7 @@
positional = false),
@Param(
name = VALUES_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
defaultValue = "[]",
doc = VALUES_DOC,
@@ -233,7 +233,7 @@
String defaultString,
String doc,
Boolean mandatory,
- SkylarkList<?> values,
+ Sequence<?> values,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException;
@@ -311,14 +311,14 @@
doc = MANDATORY_DOC),
@Param(
name = PROVIDERS_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
defaultValue = "[]",
named = true,
positional = false,
doc = PROVIDERS_DOC),
@Param(
name = ALLOW_RULES_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
noneable = true,
defaultValue = "None",
@@ -352,7 +352,7 @@
+ "unless it really helps clarify your intentions."),
@Param(
name = ASPECTS_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = SkylarkAspectApi.class,
defaultValue = "[]",
named = true,
@@ -368,11 +368,11 @@
Object allowFiles,
Object allowSingleFile,
Boolean mandatory,
- SkylarkList<?> providers,
+ Sequence<?> providers,
Object allowRules,
Boolean singleFile,
Object cfg,
- SkylarkList<?> aspects,
+ Sequence<?> aspects,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException;
@@ -402,7 +402,7 @@
@Param(
name = DEFAULT_ARG,
allowedTypes = {
- @ParamType(type = SkylarkList.class, generic1 = String.class),
+ @ParamType(type = Sequence.class, generic1 = String.class),
@ParamType(type = StarlarkFunction.class)
},
defaultValue = "[]",
@@ -423,7 +423,7 @@
Boolean mandatory,
Boolean nonEmpty,
Boolean allowEmpty,
- SkylarkList<?> defaultList,
+ Sequence<?> defaultList,
String doc,
FuncallExpression ast,
StarlarkThread thread)
@@ -454,7 +454,7 @@
@Param(
name = DEFAULT_ARG,
allowedTypes = {
- @ParamType(type = SkylarkList.class, generic1 = Integer.class),
+ @ParamType(type = Sequence.class, generic1 = Integer.class),
@ParamType(type = StarlarkFunction.class)
},
defaultValue = "[]",
@@ -475,7 +475,7 @@
Boolean mandatory,
Boolean nonEmpty,
Boolean allowEmpty,
- SkylarkList<?> defaultList,
+ Sequence<?> defaultList,
String doc,
FuncallExpression ast,
StarlarkThread thread)
@@ -496,7 +496,7 @@
@Param(
name = DEFAULT_ARG,
allowedTypes = {
- @ParamType(type = SkylarkList.class, generic1 = Label.class),
+ @ParamType(type = Sequence.class, generic1 = Label.class),
@ParamType(type = StarlarkFunction.class)
},
callbackEnabled = true,
@@ -524,7 +524,7 @@
doc = ALLOW_FILES_DOC),
@Param(
name = ALLOW_RULES_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
noneable = true,
defaultValue = "None",
@@ -533,14 +533,14 @@
doc = ALLOW_RULES_DOC),
@Param(
name = PROVIDERS_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
defaultValue = "[]",
named = true,
positional = false,
doc = PROVIDERS_DOC),
@Param(
name = FLAGS_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
defaultValue = "[]",
named = true,
@@ -570,7 +570,7 @@
doc = CONFIGURATION_DOC),
@Param(
name = ASPECTS_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = SkylarkAspectApi.class,
defaultValue = "[]",
named = true,
@@ -585,12 +585,12 @@
String doc,
Object allowFiles,
Object allowRules,
- SkylarkList<?> providers,
- SkylarkList<?> flags,
+ Sequence<?> providers,
+ Sequence<?> flags,
Boolean mandatory,
Boolean nonEmpty,
Object cfg,
- SkylarkList<?> aspects,
+ Sequence<?> aspects,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException;
@@ -640,7 +640,7 @@
doc = ALLOW_FILES_DOC),
@Param(
name = ALLOW_RULES_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
noneable = true,
defaultValue = "None",
@@ -649,14 +649,14 @@
doc = ALLOW_RULES_DOC),
@Param(
name = PROVIDERS_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
defaultValue = "[]",
named = true,
positional = false,
doc = PROVIDERS_DOC),
@Param(
name = FLAGS_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
defaultValue = "[]",
named = true,
@@ -686,7 +686,7 @@
doc = CONFIGURATION_DOC),
@Param(
name = ASPECTS_ARG,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = SkylarkAspectApi.class,
defaultValue = "[]",
named = true,
@@ -701,12 +701,12 @@
String doc,
Object allowFiles,
Object allowRules,
- SkylarkList<?> providers,
- SkylarkList<?> flags,
+ Sequence<?> providers,
+ Sequence<?> flags,
Boolean mandatory,
Boolean nonEmpty,
Object cfg,
- SkylarkList<?> aspects,
+ Sequence<?> aspects,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException;
@@ -797,7 +797,7 @@
@Param(
name = DEFAULT_ARG,
allowedTypes = {
- @ParamType(type = SkylarkList.class, generic1 = Label.class),
+ @ParamType(type = Sequence.class, generic1 = Label.class),
@ParamType(type = StarlarkFunction.class)
},
noneable = true,
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkNativeModuleApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkNativeModuleApi.java
index 1622e4f..8d1b8db 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkNativeModuleApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkNativeModuleApi.java
@@ -22,8 +22,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.NoneType;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkThread;
/** Interface for a module with native rule and package helper functions. */
@@ -53,14 +53,14 @@
parameters = {
@Param(
name = "include",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
defaultValue = "[]",
named = true,
doc = "The list of glob patterns to include."),
@Param(
name = "exclude",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
defaultValue = "[]",
named = true,
@@ -85,9 +85,9 @@
},
useLocation = true,
useStarlarkThread = true)
- public SkylarkList<?> glob(
- SkylarkList<?> include,
- SkylarkList<?> exclude,
+ public Sequence<?> glob(
+ Sequence<?> include,
+ Sequence<?> exclude,
Integer excludeDirectories,
Object allowEmpty,
Location loc,
@@ -159,7 +159,7 @@
doc = "The unique name for this rule."),
@Param(
name = "packages",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
defaultValue = "[]",
named = true,
@@ -167,7 +167,7 @@
doc = "A complete enumeration of packages in this group."),
@Param(
name = "includes",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
defaultValue = "[]",
named = true,
@@ -177,11 +177,7 @@
useLocation = true,
useStarlarkThread = true)
public NoneType packageGroup(
- String name,
- SkylarkList<?> packages,
- SkylarkList<?> includes,
- Location loc,
- StarlarkThread thread)
+ String name, Sequence<?> packages, Sequence<?> includes, Location loc, StarlarkThread thread)
throws EvalException;
@SkylarkCallable(
@@ -192,14 +188,14 @@
parameters = {
@Param(
name = "srcs",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
named = true,
doc = "The list of files to export."),
// TODO(bazel-team): make it possible to express the precise type ListOf(LabelDesignator)
@Param(
name = "visibility",
- type = SkylarkList.class,
+ type = Sequence.class,
defaultValue = "None",
noneable = true,
named = true,
@@ -209,7 +205,7 @@
+ "to every package."),
@Param(
name = "licenses",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
noneable = true,
named = true,
@@ -219,7 +215,7 @@
useLocation = true,
useStarlarkThread = true)
public NoneType exportsFiles(
- SkylarkList<?> srcs, Object visibility, Object licenses, Location loc, StarlarkThread thread)
+ Sequence<?> srcs, Object visibility, Object licenses, Location loc, StarlarkThread thread)
throws EvalException;
@SkylarkCallable(
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkRuleContextApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkRuleContextApi.java
index 9fac798..0250362 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkRuleContextApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkRuleContextApi.java
@@ -26,9 +26,9 @@
import com.google.devtools.build.lib.syntax.ClassObject;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.NoneType;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
import com.google.devtools.build.lib.syntax.SkylarkIndexable;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -344,7 +344,7 @@
type = String.class,
doc = "The string to split."),
})
- public SkylarkList<String> tokenize(String optionString) throws EvalException;
+ public Sequence<String> tokenize(String optionString) throws EvalException;
@SkylarkCallable(
name = "expand",
@@ -365,7 +365,7 @@
name = "files",
positional = true,
named = false,
- type = SkylarkList.class,
+ type = Sequence.class,
doc = "The list of files."),
@Param(
name = "label_resolver",
@@ -376,7 +376,7 @@
})
public String expand(
@Nullable String expression,
- SkylarkList<?> artifacts, // <FileT>
+ Sequence<?> artifacts, // <FileT>
Label labelResolver)
throws EvalException;
@@ -464,10 +464,10 @@
name = "allowed_placeholders",
positional = true,
named = false,
- type = SkylarkList.class,
+ type = Sequence.class,
doc = "The allowed placeholders."),
})
- public boolean checkPlaceholders(String template, SkylarkList<?> allowedPlaceholders) // <String>
+ public boolean checkPlaceholders(String template, Sequence<?> allowedPlaceholders) // <String>
throws EvalException;
@SkylarkCallable(
@@ -554,7 +554,7 @@
parameters = {
@Param(
name = "outputs",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
named = true,
positional = false,
@@ -562,7 +562,7 @@
@Param(
name = "inputs",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
@ParamType(type = SkylarkNestedSet.class),
},
generic1 = FileApi.class,
@@ -586,7 +586,7 @@
@Param(
name = "tools",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
@ParamType(type = SkylarkNestedSet.class),
},
generic1 = FileApi.class,
@@ -599,7 +599,7 @@
@Param(
name = "arguments",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
},
defaultValue = "[]",
named = true,
@@ -620,7 +620,7 @@
type = Object.class,
allowedTypes = {
@ParamType(type = String.class),
- @ParamType(type = SkylarkList.class, generic1 = String.class),
+ @ParamType(type = Sequence.class, generic1 = String.class),
@ParamType(type = NoneType.class),
},
noneable = true,
@@ -672,7 +672,7 @@
// experimental,
// so folks shouldn't be too attached, but consider renaming to be more accurate/opaque.
name = "input_manifests",
- type = SkylarkList.class,
+ type = Sequence.class,
noneable = true,
defaultValue = "None",
named = true,
@@ -685,7 +685,7 @@
useLocation = true,
useStarlarkThread = true)
public NoneType action(
- SkylarkList<?> outputs,
+ Sequence<?> outputs,
Object inputs,
Object executableUnchecked,
Object toolsUnchecked,
@@ -723,7 +723,7 @@
@Param(name = "input", type = String.class, doc = "String to be expanded."),
@Param(
name = "targets",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
defaultValue = "[]",
named = true,
@@ -733,8 +733,7 @@
useLocation = true,
useStarlarkThread = true)
public String expandLocation(
- String input, SkylarkList<?> targets, Location loc, StarlarkThread thread)
- throws EvalException;
+ String input, Sequence<?> targets, Location loc, StarlarkThread thread) throws EvalException;
@SkylarkCallable(
name = "file_action",
@@ -779,7 +778,7 @@
@Param(
name = "inputs",
allowedTypes = {
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
@ParamType(type = SkylarkNestedSet.class),
},
generic1 = FileApi.class,
@@ -845,7 +844,7 @@
parameters = {
@Param(
name = "files",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
named = true,
defaultValue = "[]",
@@ -899,7 +898,7 @@
},
useLocation = true)
public RunfilesApi runfiles(
- SkylarkList<?> files,
+ Sequence<?> files,
Object transitiveFiles,
Boolean collectData,
Boolean collectDefault,
@@ -955,7 +954,7 @@
@Param(
name = "tools",
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
named = true,
positional = false,
@@ -987,7 +986,7 @@
Object attributeUnchecked,
Boolean expandLocations,
Object makeVariablesUnchecked,
- SkylarkList<?> tools,
+ Sequence<?> tools,
SkylarkDict<?, ?> labelDictUnchecked,
SkylarkDict<?, ?> executionRequirementsUnchecked,
Location loc,
@@ -1007,7 +1006,7 @@
@Param(
name = "tools",
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
named = true,
positional = false,
@@ -1015,5 +1014,5 @@
},
useLocation = false,
useStarlarkThread = false)
- public Tuple<Object> resolveTools(SkylarkList<?> tools) throws EvalException;
+ public Tuple<Object> resolveTools(Sequence<?> tools) throws EvalException;
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkRuleFunctionsApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkRuleFunctionsApi.java
index 2e1977a..558a51b 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkRuleFunctionsApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/SkylarkRuleFunctionsApi.java
@@ -26,8 +26,8 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.FuncallExpression;
import com.google.devtools.build.lib.syntax.NoneType;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkFunction;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -77,7 +77,7 @@
+ " fields = { 'a' : 'Documentation for a', 'b' : 'Documentation for b'"
+ " })</pre></ul>All fields are optional.",
allowedTypes = {
- @ParamType(type = SkylarkList.class, generic1 = String.class),
+ @ParamType(type = Sequence.class, generic1 = String.class),
@ParamType(type = SkylarkDict.class)
},
noneable = true,
@@ -215,7 +215,7 @@
+ "(e.g. when generating header files for C++), do not set this flag."),
@Param(
name = "fragments",
- type = SkylarkList.class,
+ type = Sequence.class,
named = true,
generic1 = String.class,
defaultValue = "[]",
@@ -224,7 +224,7 @@
+ "in target configuration."),
@Param(
name = "host_fragments",
- type = SkylarkList.class,
+ type = Sequence.class,
named = true,
generic1 = String.class,
defaultValue = "[]",
@@ -247,7 +247,7 @@
+ "Starlark rules. This flag may be removed in the future."),
@Param(
name = "toolchains",
- type = SkylarkList.class,
+ type = Sequence.class,
named = true,
generic1 = String.class,
defaultValue = "[]",
@@ -266,14 +266,14 @@
+ "tools."),
@Param(
name = "provides",
- type = SkylarkList.class,
+ type = Sequence.class,
named = true,
positional = false,
defaultValue = "[]",
doc = PROVIDES_DOC),
@Param(
name = "exec_compatible_with",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
named = true,
positional = false,
@@ -339,13 +339,13 @@
Object implicitOutputs,
Boolean executable,
Boolean outputToGenfiles,
- SkylarkList<?> fragments,
- SkylarkList<?> hostFragments,
+ Sequence<?> fragments,
+ Sequence<?> hostFragments,
Boolean skylarkTestable,
- SkylarkList<?> toolchains,
+ Sequence<?> toolchains,
String doc,
- SkylarkList<?> providesArg,
- SkylarkList<?> execCompatibleWith,
+ Sequence<?> providesArg,
+ Sequence<?> execCompatibleWith,
Object analysisTest,
Object buildSetting,
Object cfg,
@@ -373,7 +373,7 @@
+ "analysis phase for each application of an aspect to a target."),
@Param(
name = "attr_aspects",
- type = SkylarkList.class,
+ type = Sequence.class,
named = true,
generic1 = String.class,
defaultValue = "[]",
@@ -405,7 +405,7 @@
+ "name, type, and valid values according to the restriction."),
@Param(
name = "required_aspect_providers",
- type = SkylarkList.class,
+ type = Sequence.class,
named = true,
defaultValue = "[]",
doc =
@@ -428,13 +428,13 @@
+ "<code>BazInfo</code> *and* <code>QuxInfo</code>."),
@Param(
name = "provides",
- type = SkylarkList.class,
+ type = Sequence.class,
named = true,
defaultValue = "[]",
doc = PROVIDES_DOC),
@Param(
name = "fragments",
- type = SkylarkList.class,
+ type = Sequence.class,
named = true,
generic1 = String.class,
defaultValue = "[]",
@@ -443,7 +443,7 @@
+ "in target configuration."),
@Param(
name = "host_fragments",
- type = SkylarkList.class,
+ type = Sequence.class,
named = true,
generic1 = String.class,
defaultValue = "[]",
@@ -452,7 +452,7 @@
+ "in host configuration."),
@Param(
name = "toolchains",
- type = SkylarkList.class,
+ type = Sequence.class,
named = true,
generic1 = String.class,
defaultValue = "[]",
@@ -492,13 +492,13 @@
useAst = true)
public SkylarkAspectApi aspect(
StarlarkFunction implementation,
- SkylarkList<?> attributeAspects,
+ Sequence<?> attributeAspects,
Object attrs,
- SkylarkList<?> requiredAspectProvidersArg,
- SkylarkList<?> providesArg,
- SkylarkList<?> fragments,
- SkylarkList<?> hostFragments,
- SkylarkList<?> toolchains,
+ Sequence<?> requiredAspectProvidersArg,
+ Sequence<?> providesArg,
+ Sequence<?> fragments,
+ Sequence<?> hostFragments,
+ Sequence<?> toolchains,
String doc,
Boolean applyToGeneratingRules,
FuncallExpression ast,
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/WorkspaceGlobalsApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/WorkspaceGlobalsApi.java
index 6d12991..6565196 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/WorkspaceGlobalsApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/WorkspaceGlobalsApi.java
@@ -21,8 +21,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkGlobalLibrary;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.NoneType;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkThread;
/** A collection of global skylark build API functions that apply to WORKSPACE files. */
@@ -81,7 +81,7 @@
useStarlarkThread = true)
NoneType workspace(
String name,
- SkylarkDict<?, ?> managedDirectories, // <String, SkylarkList<String>>
+ SkylarkDict<?, ?> managedDirectories, // <String, Sequence<String>>
Location loc,
StarlarkThread thread)
throws EvalException, InterruptedException;
@@ -93,13 +93,13 @@
extraPositionals =
@Param(
name = "platform_labels",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
doc = "The labels of the platforms to register."),
useLocation = true,
useStarlarkThread = true)
NoneType registerExecutionPlatforms(
- SkylarkList<?> platformLabels, Location location, StarlarkThread thread)
+ Sequence<?> platformLabels, Location location, StarlarkThread thread)
throws EvalException, InterruptedException;
@SkylarkCallable(
@@ -111,13 +111,12 @@
extraPositionals =
@Param(
name = "toolchain_labels",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
doc = "The labels of the toolchains to register."),
useLocation = true,
useStarlarkThread = true)
- NoneType registerToolchains(
- SkylarkList<?> toolchainLabels, Location location, StarlarkThread thread)
+ NoneType registerToolchains(Sequence<?> toolchainLabels, Location location, StarlarkThread thread)
throws EvalException, InterruptedException;
@SkylarkCallable(
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidDataProcessingApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidDataProcessingApi.java
index 920778f..497c495 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidDataProcessingApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidDataProcessingApi.java
@@ -24,8 +24,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -57,7 +57,7 @@
@Param(
name = "deps",
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = AndroidAssetsInfoApi.class,
positional = false,
named = true,
@@ -79,7 +79,7 @@
+ " for backwards-compatibility with existing behavior.",
documented = false)
AndroidAssetsInfoT assetsFromDeps(
- SkylarkList<?> deps, // <AndroidAssetsInfoT>
+ Sequence<?> deps, // <AndroidAssetsInfoT>
boolean neverlink,
StarlarkThread thread)
throws EvalException;
@@ -96,7 +96,7 @@
@Param(
name = "deps",
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = AndroidResourcesInfoApi.class,
positional = false,
named = true,
@@ -104,7 +104,7 @@
@Param(
name = "assets",
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = AndroidAssetsInfoApi.class,
positional = false,
named = true,
@@ -137,8 +137,8 @@
documented = false)
AndroidResourcesInfoT resourcesFromDeps(
AndroidDataContextT ctx,
- SkylarkList<?> deps, // <AndroidResourcesInfoT>
- SkylarkList<?> assets, // <AndroidAssetsInfoT>
+ Sequence<?> deps, // <AndroidResourcesInfoT>
+ Sequence<?> assets, // <AndroidAssetsInfoT>
boolean neverlink,
String customPackage,
Location location,
@@ -211,7 +211,7 @@
name = "assets",
positional = false,
defaultValue = "None",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
noneable = true,
named = true,
@@ -232,7 +232,7 @@
name = "deps",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = AndroidAssetsInfoApi.class,
named = true,
doc =
@@ -260,7 +260,7 @@
AndroidDataContextT ctx,
Object assets,
Object assetsDir,
- SkylarkList<?> deps, // <AndroidAssetsInfoT>
+ Sequence<?> deps, // <AndroidAssetsInfoT>
boolean neverlink,
Location location,
StarlarkThread thread)
@@ -287,7 +287,7 @@
name = "resources",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileProviderApi.class,
named = true,
doc = "Providers of this target's resources."),
@@ -295,7 +295,7 @@
name = "deps",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = AndroidResourcesInfoApi.class,
named = true,
doc =
@@ -336,8 +336,8 @@
ValidatedAndroidDataT mergeRes(
AndroidDataContextT ctx,
AndroidManifestInfoT manifest,
- SkylarkList<?> resources, // <TransitiveInfoCollectionT>
- SkylarkList<?> deps, // <AndroidResourcesInfoT>
+ Sequence<?> resources, // <TransitiveInfoCollectionT>
+ Sequence<?> deps, // <AndroidResourcesInfoT>
boolean neverlink,
boolean enableDataBinding,
Location location,
@@ -365,7 +365,7 @@
name = "resources",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileProviderApi.class,
named = true,
doc = "Providers of this target's resources."),
@@ -373,7 +373,7 @@
name = "deps",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = AndroidResourcesInfoApi.class,
named = true,
doc =
@@ -413,8 +413,8 @@
SkylarkDict<? extends ProviderApi, ? extends StructApi> mergeResources(
AndroidDataContextT ctx,
AndroidManifestInfoT manifest,
- SkylarkList<?> resources, // <TransitiveInfoCollectionT>
- SkylarkList<?> deps, // <AndroidResourcesInfoT>
+ Sequence<?> resources, // <TransitiveInfoCollectionT>
+ Sequence<?> deps, // <AndroidResourcesInfoT>
boolean neverlink,
boolean enableDataBinding,
Location location,
@@ -454,7 +454,7 @@
doc = "The library class jar."),
@Param(
name = "local_proguard_specs",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
defaultValue = "[]",
positional = false,
@@ -464,7 +464,7 @@
+ " inherited in the top-level target."),
@Param(
name = "deps",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = AndroidLibraryAarInfoApi.class,
defaultValue = "[]",
positional = false,
@@ -490,8 +490,8 @@
AndroidResourcesInfoT resourcesInfo,
AndroidAssetsInfoT assetsInfo,
FileT libraryClassJar,
- SkylarkList<?> localProguardSpecs, // <FileT>
- SkylarkList<?> deps, // <AndroidLibraryAarInfoT>
+ Sequence<?> localProguardSpecs, // <FileT>
+ Sequence<?> deps, // <AndroidLibraryAarInfoT>
boolean neverlink)
throws EvalException, InterruptedException;
@@ -524,7 +524,7 @@
doc = "The manifest file."),
@Param(
name = "deps",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
named = true,
positional = false,
@@ -538,7 +538,7 @@
SpecialFileT resources,
SpecialFileT assets,
FileT androidManifest,
- SkylarkList<?> deps /* <TransitiveInfoCollectionT> */)
+ Sequence<?> deps /* <TransitiveInfoCollectionT> */)
throws InterruptedException, EvalException;
@SkylarkCallable(
@@ -564,7 +564,7 @@
name = "resources",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileProviderApi.class,
named = true,
doc = "Providers of this target's resources."),
@@ -572,7 +572,7 @@
name = "assets",
positional = false,
defaultValue = "None",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
noneable = true,
named = true,
@@ -624,7 +624,7 @@
name = "deps",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
named = true,
doc =
@@ -634,7 +634,7 @@
name = "nocompress_extensions",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
named = true,
doc = "A list of file extensions to leave uncompressed in the resource apk.")
@@ -648,14 +648,14 @@
SkylarkDict<? extends ProviderApi, ? extends StructApi> processLocalTestData(
AndroidDataContextT ctx,
Object manifest,
- SkylarkList<?> resources, // <TransitiveInfoCollectionT>
+ Sequence<?> resources, // <TransitiveInfoCollectionT>
Object assets,
Object assetsDir,
Object customPackage,
String aaptVersionString,
SkylarkDict<?, ?> manifestValues, // <String, String>
- SkylarkList<?> deps, // <TransitiveInfoCollectionT>
- SkylarkList<?> noCompressExtensions, // <String>
+ Sequence<?> deps, // <TransitiveInfoCollectionT>
+ Sequence<?> noCompressExtensions, // <String>
Location location,
StarlarkThread thread)
throws InterruptedException, EvalException;
@@ -683,7 +683,7 @@
name = "resource_configuration_filters",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
named = true,
doc =
@@ -693,7 +693,7 @@
name = "densities",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
named = true,
doc =
@@ -704,7 +704,7 @@
name = "nocompress_extensions",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
named = true,
doc =
@@ -729,9 +729,9 @@
AndroidBinaryDataSettingsApi makeBinarySettings(
AndroidDataContextT ctx,
Object shrinkResources,
- SkylarkList<?> resourceConfigurationFilters, // <String>
- SkylarkList<?> densities, // <String>
- SkylarkList<?> noCompressExtensions, // <String>
+ Sequence<?> resourceConfigurationFilters, // <String>
+ Sequence<?> densities, // <String>
+ Sequence<?> noCompressExtensions, // <String>
String aaptVersionString,
Location location,
StarlarkThread thread)
@@ -750,7 +750,7 @@
name = "resources",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileProviderApi.class,
named = true,
doc = "Providers of this target's resources."),
@@ -758,7 +758,7 @@
name = "assets",
positional = false,
defaultValue = "None",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
noneable = true,
named = true,
@@ -811,7 +811,7 @@
name = "deps",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
named = true,
doc =
@@ -861,13 +861,13 @@
documented = false)
AndroidBinaryDataInfoT processBinaryData(
AndroidDataContextT ctx,
- SkylarkList<?> resources, // <TransitiveInfoCollectionT>
+ Sequence<?> resources, // <TransitiveInfoCollectionT>
Object assets,
Object assetsDir,
Object manifest,
Object customPackage,
SkylarkDict<?, ?> manifestValues, // <String, String>
- SkylarkList<?> deps, // <TransitiveInfoCollectionT>
+ Sequence<?> deps, // <TransitiveInfoCollectionT>
String manifestMerger,
Object maybeSettings,
boolean crunchPng,
@@ -917,7 +917,7 @@
name = "deps",
positional = false,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
named = true,
doc =
@@ -925,7 +925,7 @@
+ " type of data."),
@Param(
name = "proguard_specs",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
defaultValue = "[]",
positional = false,
@@ -935,7 +935,7 @@
+ " inherited in the top-level target."),
@Param(
name = "extra_proguard_specs,",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = TransitiveInfoCollectionApi.class,
defaultValue = "[]",
positional = false,
@@ -956,9 +956,9 @@
FileT proguardOutputJar,
FileT proguardMapping,
Object maybeSettings,
- SkylarkList<?> deps, // <TransitiveInfoCollectionT>
- SkylarkList<?> localProguardSpecs, // <TransitiveInfoCollectionT>
- SkylarkList<?> extraProguardSpecs, // <TransitiveInfoCollectionT>
+ Sequence<?> deps, // <TransitiveInfoCollectionT>
+ Sequence<?> localProguardSpecs, // <TransitiveInfoCollectionT>
+ Sequence<?> extraProguardSpecs, // <TransitiveInfoCollectionT>
Location location,
StarlarkThread thread)
throws EvalException, InterruptedException;
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidIdeInfoProviderApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidIdeInfoProviderApi.java
index 70991b0..80c1a33 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidIdeInfoProviderApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidIdeInfoProviderApi.java
@@ -24,8 +24,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkConstructor;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import javax.annotation.Nullable;
@@ -219,14 +219,14 @@
doc = "A list of artifacts of the idl srcs.",
positional = true,
named = false,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class),
@Param(
name = "idl_generated_java_files",
doc = "A list of artifacts of the idl generated java files.",
positional = true,
named = false,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class),
@Param(
name = "idl_source_jar",
@@ -281,7 +281,7 @@
doc = "A list of artifacts of the apks under test",
positional = true,
named = false,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class),
@Param(
name = "native_libs",
@@ -300,8 +300,8 @@
/*noneable*/ Object manifest,
/*noneable*/ Object generatedManifest,
/*noneable*/ Object idlImportRoot,
- SkylarkList<?> idlSrcs, // <FileT>
- SkylarkList<?> idlGeneratedJavaFiles, // <FileT>
+ Sequence<?> idlSrcs, // <FileT>
+ Sequence<?> idlGeneratedJavaFiles, // <FileT>
/*noneable*/ Object idlSourceJar,
/*noneable*/ Object idlClassJar,
boolean definesAndroidResources,
@@ -309,7 +309,7 @@
/*noneable*/ Object resourceApk,
/*noneable*/ Object signedApk,
/*noneable*/ Object aar,
- SkylarkList<?> apksUnderTest, // <FileT>
+ Sequence<?> apksUnderTest, // <FileT>
SkylarkDict<?, ?> nativeLibs /* <String, SkylarkNestedSet> */)
throws EvalException;
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidProguardInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidProguardInfoApi.java
index d41b6e9..6ef28ed 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidProguardInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/AndroidProguardInfoApi.java
@@ -22,7 +22,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkConstructor;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
/** A target that can provide local proguard specifications. */
@SkylarkModule(
@@ -61,12 +61,12 @@
doc = "A list of local proguard specs.",
positional = true,
named = false,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class)
},
selfCall = true)
@SkylarkConstructor(objectType = AndroidProguardInfoApi.class)
- AndroidProguardInfoApi<FileT> createInfo(SkylarkList<?> localProguardSpecs /* <FileT> */)
+ AndroidProguardInfoApi<FileT> createInfo(Sequence<?> localProguardSpecs /* <FileT> */)
throws EvalException;
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/DataBindingV2ProviderApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/DataBindingV2ProviderApi.java
index b7f4f9d..ee3544c 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/DataBindingV2ProviderApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/DataBindingV2ProviderApi.java
@@ -24,7 +24,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import javax.annotation.Nullable;
/**
@@ -176,7 +176,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = DataBindingV2ProviderApi.class),
@Param(
name = "databinding_v2_providers_in_exports",
@@ -184,7 +184,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = DataBindingV2ProviderApi.class),
},
selfCall = true)
@@ -195,8 +195,8 @@
Object brFile,
Object label,
Object javaPackage,
- SkylarkList<?> databindingV2ProvidersInDeps, // <DataBindingV2ProviderApi<FileT>>
- SkylarkList<?> databindingV2ProvidersInExports /* <DataBindingV2ProviderApi<FileT>> */)
+ Sequence<?> databindingV2ProvidersInDeps, // <DataBindingV2ProviderApi<FileT>>
+ Sequence<?> databindingV2ProvidersInExports /* <DataBindingV2ProviderApi<FileT>> */)
throws EvalException;
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/UsesDataBindingProviderApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/UsesDataBindingProviderApi.java
index b8c6684..8c1a2ab 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/UsesDataBindingProviderApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/UsesDataBindingProviderApi.java
@@ -22,7 +22,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkConstructor;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
/**
* An interface for a provider that exposes the use of <a
@@ -65,12 +65,12 @@
doc = "A list of artifacts of the metadata outputs.",
positional = true,
named = false,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class),
},
selfCall = true)
@SkylarkConstructor(objectType = UsesDataBindingProviderApi.class)
- UsesDataBindingProviderApi<FileT> createInfo(SkylarkList<?> metadataOutputs /* <FileT> */)
+ UsesDataBindingProviderApi<FileT> createInfo(Sequence<?> metadataOutputs /* <FileT> */)
throws EvalException;
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/ValidatedAndroidDataApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/ValidatedAndroidDataApi.java
index 3e89181..9696dca 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/ValidatedAndroidDataApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/android/ValidatedAndroidDataApi.java
@@ -18,7 +18,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import javax.annotation.Nullable;
@@ -116,5 +116,5 @@
doc = "",
documented = false,
enableOnlyWithFlag = FlagIdentifier.EXPERIMENTAL_ENABLE_ANDROID_MIGRATION_APIS)
- SkylarkList<FileT> getResourcesList();
+ Sequence<FileT> getResourcesList();
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleCommonApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleCommonApi.java
index 5a7c2e6..22e6d48 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleCommonApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleCommonApi.java
@@ -27,8 +27,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -371,7 +371,7 @@
doc = "The Starlark rule context."),
@Param(
name = "extra_linkopts",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
named = true,
positional = false,
@@ -379,7 +379,7 @@
doc = "Extra linkopts to be passed to the linker action."),
@Param(
name = "extra_link_inputs",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
named = true,
positional = false,
@@ -390,8 +390,8 @@
// TODO(b/70937317): Iterate on, improve, and solidify this API.
public StructApi linkMultiArchBinary(
SkylarkRuleContextApi skylarkRuleContext,
- SkylarkList<?> extraLinkopts, // <String> expected.
- SkylarkList<?> extraLinkInputs, // <? extends FileApi> expected.
+ Sequence<?> extraLinkopts, // <String> expected.
+ Sequence<?> extraLinkInputs, // <? extends FileApi> expected.
StarlarkThread thread)
throws EvalException, InterruptedException;
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/ObjcProviderApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/ObjcProviderApi.java
index ad6b9c4..1e023fc 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/ObjcProviderApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/ObjcProviderApi.java
@@ -20,7 +20,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
/**
@@ -80,7 +80,7 @@
doc =
"Header files from this target directly (no transitive headers). "
+ "These may be either public or private headers.")
- public SkylarkList<FileApiT> directHeaders();
+ public Sequence<FileApiT> directHeaders();
@SkylarkCallable(name = "imported_library",
structField = true,
@@ -174,7 +174,7 @@
doc =
"Module map files from this target directly (no transitive module maps). "
+ "Used to enforce proper use of private header files and for Swift compilation.")
- public SkylarkList<FileApiT> directModuleMaps();
+ public Sequence<FileApiT> directModuleMaps();
@SkylarkCallable(name = "multi_arch_dynamic_libraries",
structField = true,
@@ -216,7 +216,7 @@
name = "direct_sources",
structField = true,
doc = "All direct source files from this target (no transitive files).")
- public SkylarkList<FileApiT> directSources();
+ public Sequence<FileApiT> directSources();
@SkylarkCallable(
name = "static_framework_file",
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/config/ConfigGlobalLibraryApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/config/ConfigGlobalLibraryApi.java
index 5f4688e..05e0620 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/config/ConfigGlobalLibraryApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/config/ConfigGlobalLibraryApi.java
@@ -21,8 +21,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkGlobalLibrary;
import com.google.devtools.build.lib.syntax.BaseFunction;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -80,7 +80,7 @@
+ "split transition."),
@Param(
name = "inputs",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
positional = false,
named = true,
@@ -90,7 +90,7 @@
+ "parameter."),
@Param(
name = "outputs",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
positional = false,
named = true,
@@ -103,8 +103,8 @@
@SkylarkConstructor(objectType = ConfigurationTransitionApi.class)
ConfigurationTransitionApi transition(
BaseFunction implementation,
- SkylarkList<?> inputs, // <String> expected
- SkylarkList<?> outputs, // <String> expected
+ Sequence<?> inputs, // <String> expected
+ Sequence<?> outputs, // <String> expected
Location location,
StarlarkThread thread)
throws EvalException;
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/BazelCcModuleApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/BazelCcModuleApi.java
index 0cf3fa9..8aeadb8 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/BazelCcModuleApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/BazelCcModuleApi.java
@@ -24,7 +24,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.NoneType;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import com.google.devtools.build.lib.syntax.Tuple;
@@ -93,7 +93,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "public_hdrs",
doc =
@@ -102,7 +102,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "private_hdrs",
doc =
@@ -111,7 +111,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "includes",
doc =
@@ -120,7 +120,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "quote_includes",
doc =
@@ -131,7 +131,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "system_includes",
doc =
@@ -142,7 +142,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "framework_includes",
doc =
@@ -152,7 +152,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "defines",
doc =
@@ -161,7 +161,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "local_defines",
doc =
@@ -170,21 +170,21 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "user_compile_flags",
doc = "Additional list of compilation options.",
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "compilation_contexts",
doc = "Headers from dependencies used for compilation.",
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "name",
doc =
@@ -213,27 +213,27 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
})
Tuple<Object> compile(
SkylarkActionFactoryT skylarkActionFactoryApi,
FeatureConfigurationT skylarkFeatureConfiguration,
CcToolchainProviderT skylarkCcToolchainProvider,
- SkylarkList<?> sources, // <FileT> expected
- SkylarkList<?> publicHeaders, // <FileT> expected
- SkylarkList<?> privateHeaders, // <FileT> expected
- SkylarkList<?> includes, // <String> expected
- SkylarkList<?> quoteIncludes, // <String> expected
- SkylarkList<?> systemIncludes, // <String> expected
- SkylarkList<?> frameworkIncludes, // <String> expected
- SkylarkList<?> defines, // <String> expected
- SkylarkList<?> localDefines, // <String> expected
- SkylarkList<?> userCompileFlags, // <String> expected
- SkylarkList<?> ccCompilationContexts, // <CompilationContextT> expected
+ Sequence<?> sources, // <FileT> expected
+ Sequence<?> publicHeaders, // <FileT> expected
+ Sequence<?> privateHeaders, // <FileT> expected
+ Sequence<?> includes, // <String> expected
+ Sequence<?> quoteIncludes, // <String> expected
+ Sequence<?> systemIncludes, // <String> expected
+ Sequence<?> frameworkIncludes, // <String> expected
+ Sequence<?> defines, // <String> expected
+ Sequence<?> localDefines, // <String> expected
+ Sequence<?> userCompileFlags, // <String> expected
+ Sequence<?> ccCompilationContexts, // <CompilationContextT> expected
String name,
boolean disallowPicOutputs,
boolean disallowNopicOutputs,
- SkylarkList<?> additionalInputs, // <FileT> expected
+ Sequence<?> additionalInputs, // <FileT> expected
Location location,
StarlarkThread thread)
throws EvalException, InterruptedException;
@@ -279,7 +279,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "linking_contexts",
doc =
@@ -288,7 +288,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "name",
doc =
@@ -324,7 +324,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "grep_includes",
positional = false,
@@ -338,13 +338,13 @@
FeatureConfigurationT skylarkFeatureConfiguration,
CcToolchainProviderT skylarkCcToolchainProvider,
Object compilationOutputs,
- SkylarkList<?> userLinkFlags, // <String> expected
- SkylarkList<?> linkingContexts, // <LinkingContextT> expected
+ Sequence<?> userLinkFlags, // <String> expected
+ Sequence<?> linkingContexts, // <LinkingContextT> expected
String name,
String language,
String outputType,
boolean linkDepsStatically,
- SkylarkList<?> additionalInputs, // <FileT> expected
+ Sequence<?> additionalInputs, // <FileT> expected
Object grepIncludes,
Location location,
StarlarkThread thread)
@@ -390,9 +390,9 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
})
CompilationOutputsT mergeCcCompilationOutputsFromSkylark(
- SkylarkList<?> compilationOutputs) // <CompilationOutputsT> expected
+ Sequence<?> compilationOutputs) // <CompilationOutputsT> expected
throws EvalException;
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcCompilationOutputsApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcCompilationOutputsApi.java
index fe5b519..eecdd69 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcCompilationOutputsApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcCompilationOutputsApi.java
@@ -22,7 +22,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.StarlarkThread;
/** Interface for a structured representation of the compilation outputs of a C++ rule. */
@@ -43,12 +43,12 @@
@Param(name = "use_pic", doc = "use_pic", positional = false, named = true),
})
@Deprecated
- SkylarkList<FileT> getSkylarkObjectFiles(boolean usePic, Location location, StarlarkThread thread)
+ Sequence<FileT> getSkylarkObjectFiles(boolean usePic, Location location, StarlarkThread thread)
throws EvalException;
@SkylarkCallable(name = "objects", documented = false, useLocation = true, structField = true)
- SkylarkList<FileT> getSkylarkObjects(Location location) throws EvalException;
+ Sequence<FileT> getSkylarkObjects(Location location) throws EvalException;
@SkylarkCallable(name = "pic_objects", documented = false, useLocation = true, structField = true)
- SkylarkList<FileT> getSkylarkPicObjects(Location location) throws EvalException;
+ Sequence<FileT> getSkylarkPicObjects(Location location) throws EvalException;
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcLinkingContextApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcLinkingContextApi.java
index 51fa062..90860fa 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcLinkingContextApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcLinkingContextApi.java
@@ -19,7 +19,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -36,7 +36,7 @@
name = "user_link_flags",
doc = "Returns the list of user link flags passed as strings.",
structField = true)
- SkylarkList<String> getSkylarkUserLinkFlags();
+ Sequence<String> getSkylarkUserLinkFlags();
@SkylarkCallable(
name = "libraries_to_link",
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcModuleApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcModuleApi.java
index 3f341ff..85eb133 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcModuleApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcModuleApi.java
@@ -27,8 +27,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.NoneType;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -95,20 +95,20 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "unsupported_features",
doc = "List of features that are unsupported by the current rule.",
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
})
FeatureConfigurationT configureFeatures(
Object ruleContextOrNone,
CcToolchainProviderT toolchain,
- SkylarkList<?> requestedFeatures, // <String> expected
- SkylarkList<?> unsupportedFeatures) // <String> expected
+ Sequence<?> requestedFeatures, // <String> expected
+ Sequence<?> unsupportedFeatures) // <String> expected
throws EvalException;
@SkylarkCallable(
@@ -153,7 +153,7 @@
named = true,
positional = false),
})
- SkylarkList<String> getExecutionRequirements(
+ Sequence<String> getExecutionRequirements(
FeatureConfigurationT featureConfiguration, String actionName);
@SkylarkCallable(
@@ -222,7 +222,7 @@
positional = false,
type = CcToolchainVariablesApi.class),
})
- SkylarkList<String> getCommandLine(
+ Sequence<String> getCommandLine(
FeatureConfigurationT featureConfiguration,
String actionName,
CcToolchainVariablesT variables)
@@ -307,7 +307,7 @@
noneable = true,
allowedTypes = {
@ParamType(type = NoneType.class),
- @ParamType(type = SkylarkList.class),
+ @ParamType(type = Sequence.class),
}),
@Param(
name = "include_directories",
@@ -438,10 +438,7 @@
named = true,
defaultValue = "None",
noneable = true,
- allowedTypes = {
- @ParamType(type = NoneType.class),
- @ParamType(type = SkylarkList.class)
- }),
+ allowedTypes = {@ParamType(type = NoneType.class), @ParamType(type = Sequence.class)}),
@Param(
name = "output_file",
doc = "Optional output file path.",
@@ -684,10 +681,7 @@
named = true,
noneable = true,
defaultValue = "None",
- allowedTypes = {
- @ParamType(type = NoneType.class),
- @ParamType(type = SkylarkList.class)
- }),
+ allowedTypes = {@ParamType(type = NoneType.class), @ParamType(type = Sequence.class)}),
@Param(
name = "user_link_flags",
doc = "List of user link flags passed as strings.",
@@ -695,10 +689,7 @@
named = true,
noneable = true,
defaultValue = "None",
- allowedTypes = {
- @ParamType(type = NoneType.class),
- @ParamType(type = SkylarkList.class)
- }),
+ allowedTypes = {@ParamType(type = NoneType.class), @ParamType(type = Sequence.class)}),
@Param(
name = "additional_inputs",
doc = "For additional inputs to the linking action, e.g.: linking scripts.",
@@ -706,10 +697,7 @@
named = true,
noneable = true,
defaultValue = "None",
- allowedTypes = {
- @ParamType(type = NoneType.class),
- @ParamType(type = SkylarkList.class)
- }),
+ allowedTypes = {@ParamType(type = NoneType.class), @ParamType(type = Sequence.class)}),
})
LinkingContextT createCcLinkingInfo(
Object linkerInputs,
@@ -730,9 +718,9 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class)
+ type = Sequence.class)
})
- CcInfoApi mergeCcInfos(SkylarkList<?> ccInfos) // <CcInfoApi> expected
+ CcInfoApi mergeCcInfos(Sequence<?> ccInfos) // <CcInfoApi> expected
throws EvalException;
@SkylarkCallable(
@@ -855,7 +843,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
doc =
"A list of <a href=\"https://github.com/bazelbuild/bazel/blob/master/tools/cpp/"
+ "cc_toolchain_config_lib.bzl#L336\">features</a>."),
@@ -864,7 +852,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
doc =
"A list of <a href=\"https://github.com/bazelbuild/bazel/blob/master/tools/cpp/"
+ "cc_toolchain_config_lib.bzl#L461\">action_configs</a>."),
@@ -873,7 +861,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
doc =
"A list of <a href=\"https://github.com/bazelbuild/bazel/blob/master/tools/cpp/"
+ "cc_toolchain_config_lib.bzl#L516\">artifact_name_patterns</a>."),
@@ -882,7 +870,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
doc =
"<p>Built-in include directories for C++ compilation. These should be the exact "
+ "paths used by the compiler, and are generally relative to the exec root.</p>"
@@ -950,7 +938,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
doc =
"A list of <a href=\"https://github.com/bazelbuild/bazel/blob/master/tools/cpp/"
+ "cc_toolchain_config_lib.bzl#L400\">tool_paths</a>."),
@@ -959,7 +947,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
doc =
"A list of <a href=\"https://github.com/bazelbuild/bazel/blob/master/tools/cpp/"
+ "cc_toolchain_config_lib.bzl#L86\">make_variables</a>."),
@@ -984,10 +972,10 @@
})
CcToolchainConfigInfoT ccToolchainConfigInfoFromSkylark(
SkylarkRuleContextT skylarkRuleContext,
- SkylarkList<?> features, // <StructApi> expected
- SkylarkList<?> actionConfigs, // <StructApi> expected
- SkylarkList<?> artifactNamePatterns, // <StructApi> expected
- SkylarkList<?> cxxBuiltInIncludeDirectories, // <String> expected
+ Sequence<?> features, // <StructApi> expected
+ Sequence<?> actionConfigs, // <StructApi> expected
+ Sequence<?> artifactNamePatterns, // <StructApi> expected
+ Sequence<?> cxxBuiltInIncludeDirectories, // <String> expected
String toolchainIdentifier,
String hostSystemName,
String targetSystemName,
@@ -996,8 +984,8 @@
String compiler,
String abiVersion,
String abiLibcVersion,
- SkylarkList<?> toolPaths, // <StructApi> expected
- SkylarkList<?> makeVariables, // <StructApi> expected
+ Sequence<?> toolPaths, // <StructApi> expected
+ Sequence<?> makeVariables, // <StructApi> expected
Object builtinSysroot,
Object ccTargetOs)
throws EvalException;
@@ -1041,7 +1029,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "linking_contexts",
doc =
@@ -1050,7 +1038,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "name",
doc =
@@ -1079,7 +1067,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "disallow_static_libraries",
doc = "Whether static libraries should be created.",
@@ -1107,12 +1095,12 @@
FeatureConfigurationT skylarkFeatureConfiguration,
CcToolchainProviderT skylarkCcToolchainProvider,
CompilationOutputsT compilationOutputs,
- SkylarkList<?> userLinkFlags, // <String> expected
- SkylarkList<?> linkingContexts, // <LinkingContextT> expected
+ Sequence<?> userLinkFlags, // <String> expected
+ Sequence<?> linkingContexts, // <LinkingContextT> expected
String name,
String language,
boolean alwayslink,
- SkylarkList<?> additionalInputs, // <FileT> expected
+ Sequence<?> additionalInputs, // <FileT> expected
boolean disallowStaticLibraries,
boolean disallowDynamicLibraries,
Object grepIncludes,
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/GoWrapCcHelperApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/GoWrapCcHelperApi.java
index 4b3fbb7..37d4010 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/GoWrapCcHelperApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/GoWrapCcHelperApi.java
@@ -29,7 +29,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.NoneType;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.Tuple;
/**
@@ -153,14 +153,14 @@
positional = false,
named = true,
type = CcToolchainProviderApi.class),
- @Param(name = "srcs", positional = false, named = true, type = SkylarkList.class),
- @Param(name = "deps", positional = false, named = true, type = SkylarkList.class),
+ @Param(name = "srcs", positional = false, named = true, type = Sequence.class),
+ @Param(name = "deps", positional = false, named = true, type = Sequence.class),
})
public Tuple<FileT> createGoCompileActions(
SkylarkRuleContextT skylarkRuleContext,
CcToolchainProviderT ccToolchainProvider,
- SkylarkList<?> srcs, // <FileT> expected
- SkylarkList<?> deps /* <TransitiveInfoCollectionT> expected */)
+ Sequence<?> srcs, // <FileT> expected
+ Sequence<?> deps /* <TransitiveInfoCollectionT> expected */)
throws EvalException;
@SkylarkCallable(
@@ -174,14 +174,14 @@
positional = false,
named = true,
type = CcToolchainProviderApi.class),
- @Param(name = "srcs", positional = false, named = true, type = SkylarkList.class),
- @Param(name = "deps", positional = false, named = true, type = SkylarkList.class),
+ @Param(name = "srcs", positional = false, named = true, type = Sequence.class),
+ @Param(name = "deps", positional = false, named = true, type = Sequence.class),
})
public Tuple<FileT> createGoCompileActionsGopkg(
SkylarkRuleContextT skylarkRuleContext,
CcToolchainProviderT ccToolchainProvider,
- SkylarkList<?> srcs, // <FileT> expected
- SkylarkList<?> deps /* <TransitiveInfoCollectionT> expected */)
+ Sequence<?> srcs, // <FileT> expected
+ Sequence<?> deps /* <TransitiveInfoCollectionT> expected */)
throws EvalException;
@SkylarkCallable(
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LibraryToLinkApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LibraryToLinkApi.java
index 1bfc17f..1f90a49 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LibraryToLinkApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LibraryToLinkApi.java
@@ -19,7 +19,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
/**
* A library the user can link to. This is different from a simple linker input in that it also has
@@ -35,14 +35,14 @@
allowReturnNones = true,
doc = "<code>List</code> of object files in the library.",
structField = true)
- SkylarkList<FileT> getObjectFilesForStarlark();
+ Sequence<FileT> getObjectFilesForStarlark();
@SkylarkCallable(
name = "pic_objects",
allowReturnNones = true,
doc = "<code>List</code> of pic object files in the library.",
structField = true)
- SkylarkList<FileT> getPicObjectFilesForStarlark();
+ Sequence<FileT> getPicObjectFilesForStarlark();
@SkylarkCallable(
name = "static_library",
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LinkerInputApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LinkerInputApi.java
index a82f769..fec7916 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LinkerInputApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/LinkerInputApi.java
@@ -22,7 +22,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -47,7 +47,7 @@
doc = "Returns the list of user link flags passed as strings.",
enableOnlyWithFlag = FlagIdentifier.EXPERIMENTAL_CC_SHARED_LIBRARY,
structField = true)
- SkylarkList<String> getSkylarkUserLinkFlags();
+ Sequence<String> getSkylarkUserLinkFlags();
@SkylarkCallable(
name = "libraries",
@@ -57,12 +57,12 @@
structField = true,
enableOnlyWithFlag = FlagIdentifier.EXPERIMENTAL_CC_SHARED_LIBRARY,
useStarlarkThread = true)
- SkylarkList<LibraryToLinkT> getSkylarkLibrariesToLink(StarlarkThread thread);
+ Sequence<LibraryToLinkT> getSkylarkLibrariesToLink(StarlarkThread thread);
@SkylarkCallable(
name = "additional_inputs",
doc = "Returns the depset of additional inputs, e.g.: linker scripts.",
enableOnlyWithFlag = FlagIdentifier.EXPERIMENTAL_CC_SHARED_LIBRARY,
structField = true)
- SkylarkList<FileT> getSkylarkNonCodeInputs();
+ Sequence<FileT> getSkylarkNonCodeInputs();
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/PyWrapCcHelperApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/PyWrapCcHelperApi.java
index 841ae42..3217d45 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/PyWrapCcHelperApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/PyWrapCcHelperApi.java
@@ -22,7 +22,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
/**
@@ -63,7 +63,7 @@
@Param(name = "ctx", positional = false, named = true, type = SkylarkRuleContextApi.class),
})
// TODO(plf): PyExtension is not in Skylark.
- public SkylarkList<String> getPyExtensionLinkopts(SkylarkRuleContextT skylarkRuleContext)
+ public Sequence<String> getPyExtensionLinkopts(SkylarkRuleContextT skylarkRuleContext)
throws EvalException, InterruptedException;
@SkylarkCallable(
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/WrapCcHelperApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/WrapCcHelperApi.java
index cac6114..d01e68b 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/WrapCcHelperApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/WrapCcHelperApi.java
@@ -24,7 +24,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.NoneType;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
/**
@@ -91,8 +91,8 @@
name = "dep_compilation_contexts",
positional = false,
named = true,
- type = SkylarkList.class),
- @Param(name = "target_copts", positional = false, named = true, type = SkylarkList.class),
+ type = Sequence.class),
+ @Param(name = "target_copts", positional = false, named = true, type = Sequence.class),
})
public CompilationInfoT skylarkCreateCompileActions(
SkylarkRuleContextT skylarkRuleContext,
@@ -100,8 +100,8 @@
CcToolchainProviderT ccToolchain,
FileT ccFile,
FileT headerFile,
- SkylarkList<?> depCcCompilationContexts, // <CcCompilationContextT> expected
- SkylarkList<?> targetCopts /* <String> expected */)
+ Sequence<?> depCcCompilationContexts, // <CcCompilationContextT> expected
+ Sequence<?> targetCopts /* <String> expected */)
throws EvalException, InterruptedException;
@SkylarkCallable(
@@ -158,10 +158,10 @@
named = true,
type = SkylarkNestedSet.class),
@Param(name = "swig_source", positional = false, named = true, type = FileApi.class),
- @Param(name = "sub_parameters", positional = false, named = true, type = SkylarkList.class),
+ @Param(name = "sub_parameters", positional = false, named = true, type = Sequence.class),
@Param(name = "cc_file", positional = false, named = true, type = FileApi.class),
@Param(name = "header_file", positional = false, named = true, type = FileApi.class),
- @Param(name = "output_files", positional = false, named = true, type = SkylarkList.class),
+ @Param(name = "output_files", positional = false, named = true, type = Sequence.class),
@Param(
name = "out_dir",
positional = false,
@@ -201,10 +201,10 @@
CcCompilationContextT wrapperCcCompilationContext,
SkylarkNestedSet swigIncludes,
FileT swigSource,
- SkylarkList<?> subParameters, // <String> expected
+ Sequence<?> subParameters, // <String> expected
FileT ccFile,
FileT headerFile,
- SkylarkList<?> outputFiles, // <FileT> expected
+ Sequence<?> outputFiles, // <FileT> expected
Object outDir,
Object javaDir,
SkylarkNestedSet auxiliaryInputs,
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaCommonApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaCommonApi.java
index bdeacba..d889bb6 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaCommonApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaCommonApi.java
@@ -27,7 +27,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
@@ -70,7 +70,7 @@
name = "source_jars",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
defaultValue = "[]",
doc =
@@ -80,7 +80,7 @@
name = "source_files",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
defaultValue = "[]",
doc =
@@ -99,7 +99,7 @@
name = "javac_opts",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
defaultValue = "[]",
doc = "A list of the desired javac options. Optional."),
@@ -107,7 +107,7 @@
name = "deps",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = JavaInfoApi.class,
defaultValue = "[]",
doc = "A list of dependencies. Optional."),
@@ -115,7 +115,7 @@
name = "exports",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = JavaInfoApi.class,
defaultValue = "[]",
doc = "A list of exports. Optional."),
@@ -123,7 +123,7 @@
name = "plugins",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = JavaInfoApi.class,
defaultValue = "[]",
doc = "A list of plugins. Optional."),
@@ -131,7 +131,7 @@
name = "exported_plugins",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = JavaInfoApi.class,
defaultValue = "[]",
doc = "A list of exported plugins. Optional."),
@@ -139,7 +139,7 @@
name = "annotation_processor_additional_inputs",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
defaultValue = "[]",
doc =
@@ -149,7 +149,7 @@
name = "annotation_processor_additional_outputs",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
defaultValue = "[]",
doc =
@@ -184,14 +184,14 @@
name = "sourcepath",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
defaultValue = "[]"),
@Param(
name = "resources",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
defaultValue = "[]"),
@Param(
@@ -205,22 +205,22 @@
useStarlarkThread = true)
public JavaInfoT createJavaCompileAction(
SkylarkRuleContextT skylarkRuleContext,
- SkylarkList<?> sourceJars, // <FileT> expected.
- SkylarkList<?> sourceFiles, // <FileT> expected.
+ Sequence<?> sourceJars, // <FileT> expected.
+ Sequence<?> sourceFiles, // <FileT> expected.
FileT outputJar,
Object outputSourceJar,
- SkylarkList<?> javacOpts, // <String> expected.
- SkylarkList<?> deps, // <JavaInfoT> expected.
- SkylarkList<?> exports, // <JavaInfoT> expected.
- SkylarkList<?> plugins, // <JavaInfoT> expected.
- SkylarkList<?> exportedPlugins, // <JavaInfoT> expected.
- SkylarkList<?> annotationProcessorAdditionalInputs, // <FileT> expected.
- SkylarkList<?> annotationProcessorAdditionalOutputs, // <FileT> expected.
+ Sequence<?> javacOpts, // <String> expected.
+ Sequence<?> deps, // <JavaInfoT> expected.
+ Sequence<?> exports, // <JavaInfoT> expected.
+ Sequence<?> plugins, // <JavaInfoT> expected.
+ Sequence<?> exportedPlugins, // <JavaInfoT> expected.
+ Sequence<?> annotationProcessorAdditionalInputs, // <FileT> expected.
+ Sequence<?> annotationProcessorAdditionalOutputs, // <FileT> expected.
String strictDepsMode,
JavaToolchainT javaToolchain,
JavaRuntimeT hostJavabase,
- SkylarkList<?> sourcepathEntries, // <FileT> expected.
- SkylarkList<?> resources, // <FileT> expected.
+ Sequence<?> sourcepathEntries, // <FileT> expected.
+ Sequence<?> resources, // <FileT> expected.
Boolean neverlink,
Location loc,
StarlarkThread thread)
@@ -349,7 +349,7 @@
name = "sources",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
defaultValue = "[]",
doc = "A list of Java source files to be packed into the source jar."),
@@ -357,7 +357,7 @@
name = "source_jars",
positional = false,
named = true,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
defaultValue = "[]",
doc = "A list of source jars to be packed into the source jar."),
@@ -382,8 +382,8 @@
public FileApi packSources(
SkylarkActionFactoryT actions,
FileT outputJar,
- SkylarkList<?> sourceFiles, // <FileT> expected.
- SkylarkList<?> sourceJars, // <FileT> expected.
+ Sequence<?> sourceFiles, // <FileT> expected.
+ Sequence<?> sourceJars, // <FileT> expected.
JavaToolchainT javaToolchain,
JavaRuntimeT hostJavabase,
Location location,
@@ -419,11 +419,11 @@
name = "providers",
positional = true,
named = false,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = JavaInfoApi.class,
doc = "The list of providers to merge."),
})
- public JavaInfoT mergeJavaProviders(SkylarkList<?> providers /* <JavaInfoT> expected. */)
+ public JavaInfoT mergeJavaProviders(Sequence<?> providers /* <JavaInfoT> expected. */)
throws EvalException;
@SkylarkCallable(
@@ -490,7 +490,7 @@
doc = "The JavaInfo to enhance."),
@Param(
name = "constraints",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
named = true,
positional = false,
@@ -499,7 +499,7 @@
},
enableOnlyWithFlag = FlagIdentifier.EXPERIMENTAL_GOOGLE_LEGACY_API)
public JavaInfoT addConstraints(
- JavaInfoT javaInfo, SkylarkList<?> constraints /* <String> expected. */) throws EvalException;
+ JavaInfoT javaInfo, Sequence<?> constraints /* <String> expected. */) throws EvalException;
@SkylarkCallable(
name = "experimental_disable_annotation_processing",
@@ -545,7 +545,7 @@
doc = "The JavaInfo to clone."),
@Param(
name = "compile_time_jdeps",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = FileApi.class,
named = true,
positional = false,
@@ -554,7 +554,7 @@
},
enableOnlyWithFlag = FlagIdentifier.EXPERIMENTAL_GOOGLE_LEGACY_API)
public JavaInfoT addCompileTimeJavaDependencyArtifacts(
- JavaInfoT javaInfo, SkylarkList<?> compileTimeJavaDependencyArtifacts /* <FileT> expected. */)
+ JavaInfoT javaInfo, Sequence<?> compileTimeJavaDependencyArtifacts /* <FileT> expected. */)
throws EvalException;
@SkylarkCallable(
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaInfoApi.java
index 853d3ed..b1d18c2 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaInfoApi.java
@@ -24,7 +24,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -90,7 +90,7 @@
+ " annotations) of the target itself, i.e. NOT including the sources of the"
+ " transitive dependencies.",
structField = true)
- public SkylarkList<FileT> getSourceJars();
+ public Sequence<FileT> getSourceJars();
@SkylarkCallable(
name = "outputs",
@@ -117,7 +117,7 @@
name = "runtime_output_jars",
doc = "Returns a list of runtime Jars created by this Java/Java-like target.",
structField = true)
- public SkylarkList<FileT> getRuntimeOutputJars();
+ public Sequence<FileT> getRuntimeOutputJars();
@SkylarkCallable(
name = "transitive_deps",
@@ -201,21 +201,21 @@
doc = "If true only use this library for compilation and not at runtime."),
@Param(
name = "deps",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = JavaInfoApi.class,
named = true,
defaultValue = "[]",
doc = "Compile time dependencies that were used to create the output jar."),
@Param(
name = "runtime_deps",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = JavaInfoApi.class,
named = true,
defaultValue = "[]",
doc = "Runtime dependencies that are needed for this library."),
@Param(
name = "exports",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = JavaInfoApi.class,
named = true,
defaultValue = "[]",
@@ -244,9 +244,9 @@
Object compileJarApi,
Object sourceJarApi,
Boolean neverlink,
- SkylarkList<?> deps,
- SkylarkList<?> runtimeDeps,
- SkylarkList<?> exports,
+ Sequence<?> deps,
+ Sequence<?> runtimeDeps,
+ Sequence<?> exports,
Object jdepsApi,
Location loc,
StarlarkThread thread)
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaToolchainSkylarkApiProviderApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaToolchainSkylarkApiProviderApi.java
index c610c02..e48db2d 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaToolchainSkylarkApiProviderApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaToolchainSkylarkApiProviderApi.java
@@ -19,7 +19,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
/**
@@ -62,7 +62,7 @@
name = "jvm_opt",
doc = "The default options for the JVM running the java compiler and associated tools.",
structField = true)
- public SkylarkList<String> getSkylarkJvmOptions();
+ public Sequence<String> getSkylarkJvmOptions();
@SkylarkCallable(name = "tools", doc = "The compilation tools.", structField = true)
public SkylarkNestedSet getSkylarkTools();
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/OutputJarApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/OutputJarApi.java
index dcc01af..10cc305 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/OutputJarApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/OutputJarApi.java
@@ -19,7 +19,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
/** A tuple of a java classes jar and its associated source and interface archives. */
@SkylarkModule(
@@ -64,10 +64,9 @@
public FileT getSrcJar();
@SkylarkCallable(
- name = "source_jars",
- doc = "A list of sources archive files.",
- allowReturnNones = true,
- structField = true
- )
- public SkylarkList<FileT> getSrcJarsSkylark();
+ name = "source_jars",
+ doc = "A list of sources archive files.",
+ allowReturnNones = true,
+ structField = true)
+ public Sequence<FileT> getSrcJarsSkylark();
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/javascript/JsModuleInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/javascript/JsModuleInfoApi.java
index 2f1d3da..ddccfba 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/javascript/JsModuleInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/javascript/JsModuleInfoApi.java
@@ -25,7 +25,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
/** Info object propagating information about protocol buffer sources. */
@@ -95,7 +95,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = JsModuleInfoApi.class),
},
selfCall = true,
@@ -106,7 +106,7 @@
String wrapper,
Object fullPintoSources,
Object directPintoSources,
- SkylarkList<?> directModuleDependencies /* <? extends JsModuleApi> expected */)
+ Sequence<?> directModuleDependencies /* <? extends JsModuleApi> expected */)
throws EvalException;
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/platform/ConstraintCollectionApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/platform/ConstraintCollectionApi.java
index fe66df4..8c11e29 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/platform/ConstraintCollectionApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/platform/ConstraintCollectionApi.java
@@ -19,8 +19,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkIndexable;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import javax.annotation.Nullable;
@@ -41,7 +41,7 @@
doc = "The ConstraintSettingInfo values that this collection directly references.",
structField = true,
enableOnlyWithFlag = FlagIdentifier.EXPERIMENTAL_PLATFORM_API)
- SkylarkList<ConstraintSettingInfoT> constraintSettings();
+ Sequence<ConstraintSettingInfoT> constraintSettings();
@SkylarkCallable(
name = "get",
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/proto/ProtoRegistryProviderApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/proto/ProtoRegistryProviderApi.java
index 24b0533..e65decf 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/proto/ProtoRegistryProviderApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/proto/ProtoRegistryProviderApi.java
@@ -20,7 +20,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
/** Provides information about flavors for all built protos. */
@SkylarkModule(
@@ -33,7 +33,7 @@
NestedSet<FileT> getJars();
@SkylarkCallable(name = "flavors", documented = false, doc = "", structField = true)
- SkylarkList<String> getFlavors();
+ Sequence<String> getFlavors();
@SkylarkCallable(
name = "errorMessage",
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository/RepositoryModuleApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository/RepositoryModuleApi.java
index 1c00d66..b5a919e 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository/RepositoryModuleApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository/RepositoryModuleApi.java
@@ -21,8 +21,8 @@
import com.google.devtools.build.lib.syntax.BaseFunction;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.FuncallExpression;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkThread;
/**
@@ -71,7 +71,7 @@
positional = false),
@Param(
name = "environ",
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = String.class,
defaultValue = "[]",
doc =
@@ -103,7 +103,7 @@
BaseFunction implementation,
Object attrs,
Boolean local,
- SkylarkList<?> environ, // <String> expected
+ Sequence<?> environ, // <String> expected
Boolean configure,
String doc,
FuncallExpression ast,
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository/SkylarkRepositoryContextApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository/SkylarkRepositoryContextApi.java
index 3f7e470..531492b 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository/SkylarkRepositoryContextApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/repository/SkylarkRepositoryContextApi.java
@@ -24,8 +24,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
/** Skylark API for the repository_rule's context. */
@SkylarkModule(
@@ -235,7 +235,7 @@
parameters = {
@Param(
name = "arguments",
- type = SkylarkList.class,
+ type = Sequence.class,
doc =
"List of arguments, the first element should be the path to the program to "
+ "execute."),
@@ -267,7 +267,7 @@
+ "Can be relative to the repository root or absolute."),
})
public SkylarkExecutionResultApi execute(
- SkylarkList<?> arguments,
+ Sequence<?> arguments,
Integer timeout,
SkylarkDict<?, ?> environment, // <String, String> expected
boolean quiet,
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test/CoverageCommonApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test/CoverageCommonApi.java
index ab75787..5f2f1b3 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test/CoverageCommonApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test/CoverageCommonApi.java
@@ -21,7 +21,7 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
/** Helper functions for Starlark to access coverage-related infrastructure */
@SkylarkModule(
@@ -50,7 +50,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "dependency_attributes",
doc =
@@ -59,7 +59,7 @@
positional = false,
named = true,
defaultValue = "[]",
- type = SkylarkList.class),
+ type = Sequence.class),
@Param(
name = "extensions",
doc =
@@ -71,13 +71,13 @@
named = true,
noneable = true,
defaultValue = "None",
- type = SkylarkList.class),
+ type = Sequence.class),
},
useLocation = true)
public InstrumentedFilesInfoApi instrumentedFilesInfo(
RuleContextT skylarkRuleContext,
- SkylarkList<?> sourceAttributes, // <String> expected
- SkylarkList<?> dependencyAttributes, // <String> expected
+ Sequence<?> sourceAttributes, // <String> expected
+ Sequence<?> dependencyAttributes, // <String> expected
Object extensions,
Location location)
throws EvalException;
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkinterface/Param.java b/src/main/java/com/google/devtools/build/lib/skylarkinterface/Param.java
index a129263..9f7598c 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkinterface/Param.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkinterface/Param.java
@@ -50,8 +50,8 @@
String defaultValue() default "";
/**
- * Type of the parameter, e.g. {@link String}.class or
- * {@link com.google.devtools.build.lib.syntax.SkylarkList}.class.
+ * Type of the parameter, e.g. {@link String}.class or {@link
+ * com.google.devtools.build.lib.syntax.Sequence}.class.
*/
Class<?> type() default Object.class;
@@ -63,10 +63,10 @@
ParamType[] allowedTypes() default {};
/**
- * When {@link #type()} is a generic type (e.g.,
- * {@link com.google.devtools.build.lib.syntax.SkylarkList}), specify the type parameter (e.g.
- * {@link String}.class} along with {@link com.google.devtools.build.lib.syntax.SkylarkList} for
- * {@link #type()} to specify a list of strings).
+ * When {@link #type()} is a generic type (e.g., {@link
+ * com.google.devtools.build.lib.syntax.Sequence}), specify the type parameter (e.g. {@link
+ * String}.class} along with {@link com.google.devtools.build.lib.syntax.Sequence} for {@link
+ * #type()} to specify a list of strings).
*
* <p>This is only used for documentation generation. The actual generic type is not checked at
* runtime, so the Java method signature should use a generic type of Object and cast
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkinterface/ParamType.java b/src/main/java/com/google/devtools/build/lib/skylarkinterface/ParamType.java
index 7cf9e45..0912217 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkinterface/ParamType.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkinterface/ParamType.java
@@ -22,16 +22,16 @@
@Retention(RetentionPolicy.RUNTIME)
public @interface ParamType {
/**
- * The Java class of the type, e.g. {@link String}.class or
- * {@link com.google.devtools.build.lib.syntax.SkylarkList}.class.
+ * The Java class of the type, e.g. {@link String}.class or {@link
+ * com.google.devtools.build.lib.syntax.Sequence}.class.
*/
Class<?> type() default Object.class;
/**
- * When {@link #type()} is a generic type (e.g.,
- * {@link com.google.devtools.build.lib.syntax.SkylarkList}), specify the type parameter (e.g.
- * {@link String}.class} along with {@link com.google.devtools.build.lib.syntax.SkylarkList} for
- * {@link #type()} to specify a list of strings).
+ * When {@link #type()} is a generic type (e.g., {@link
+ * com.google.devtools.build.lib.syntax.Sequence}), specify the type parameter (e.g. {@link
+ * String}.class} along with {@link com.google.devtools.build.lib.syntax.Sequence} for {@link
+ * #type()} to specify a list of strings).
*
* <p>This is only used for documentation generation. The actual generic type is not checked at
* runtime, so the Java method signature should use a generic type of Object and cast
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkinterface/SkylarkCallable.java b/src/main/java/com/google/devtools/build/lib/skylarkinterface/SkylarkCallable.java
index 107612c..edc4849 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkinterface/SkylarkCallable.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkinterface/SkylarkCallable.java
@@ -47,8 +47,8 @@
* <li>The underlying java method's parameters must be supplied in the following order:
* <pre>method([positionals]*[named args]*(extra positionals list)(extra kwargs)
* (Location)(FuncallExpression)(StarlarkThread)(StarlarkSemantics))</pre>
- * where (extra positionals list) is a SkylarkList if extraPositionals is defined, (extra
- * kwargs) is a SkylarkDict if extraKeywords is defined, and Location, FuncallExpression,
+ * where (extra positionals list) is a Sequence if extraPositionals is defined, (extra kwargs)
+ * is a SkylarkDict if extraKeywords is defined, and Location, FuncallExpression,
* StarlarkThread, and StarlarkSemantics are supplied by the interpreter if and only if
* useLocation, useAst, useStarlarkThread, and useStarlarkSemantics are specified,
* respectively.
@@ -99,11 +99,11 @@
*
* <p>If this is left as default, it is an error for the caller to pass more positional arguments
* than are explicitly allowed by the method signature. If this is defined, all additional
- * positional arguments are passed as elements of a {@link SkylarkList} to the method.
+ * positional arguments are passed as elements of a {@link Sequence} to the method.
*
* <p>See python's <code>*args</code> (http://thepythonguru.com/python-args-and-kwargs/).
*
- * <p>(If this is defined, the annotated method signature must contain a corresponding SkylarkList
+ * <p>(If this is defined, the annotated method signature must contain a corresponding Sequence
* parameter. See the interface-level javadoc for details.)
*/
Param extraPositionals() default @Param(name = "");
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkinterface/SkylarkModule.java b/src/main/java/com/google/devtools/build/lib/skylarkinterface/SkylarkModule.java
index 18009f6..bbc5606 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkinterface/SkylarkModule.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkinterface/SkylarkModule.java
@@ -40,10 +40,10 @@
* <p>Inheriting an annotation is useful when the class is an implementation detail, such as a
* concrete implementation of an abstract interface. Overriding an annotation is useful when the
* class should have its own distinct user-visible API or documentation. For example, {@link
- * SkylarkList} is an abstract type implemented by both {@link StarlarkList} and {@link
- * SkylarkList.Tuple}, all three of which are annotated. Annotating the list and tuple types allows
- * them to define different methods, while annotating {@link SkylarkList} allows them to be
- * identified as a single type for the purpose of type checking, documentation, and error messages.
+ * Sequence} is an abstract type implemented by both {@link StarlarkList} and {@link
+ * Sequence.Tuple}, all three of which are annotated. Annotating the list and tuple types allows
+ * them to define different methods, while annotating {@link Sequence} allows them to be identified
+ * as a single type for the purpose of type checking, documentation, and error messages.
*
* <p>All {@code @SkylarkModule}-annotated types must implement {@link SkylarkValue}. Nearly all
* non-abstract implementations of {@link SkylarkValue} have or inherit a {@code @SkylarkModule}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkinterface/processor/SkylarkCallableProcessor.java b/src/main/java/com/google/devtools/build/lib/skylarkinterface/processor/SkylarkCallableProcessor.java
index 48b7ea7..e3a08a7 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkinterface/processor/SkylarkCallableProcessor.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkinterface/processor/SkylarkCallableProcessor.java
@@ -93,7 +93,7 @@
// that class (where "method name" is @SkylarkCallable.name").
private SetMultimap<String, String> processedClassMethods;
- private static final String SKYLARK_LIST = "com.google.devtools.build.lib.syntax.SkylarkList<?>";
+ private static final String SKYLARK_LIST = "com.google.devtools.build.lib.syntax.Sequence<?>";
private static final String SKYLARK_DICT =
"com.google.devtools.build.lib.syntax.SkylarkDict<?,?>";
private static final String LOCATION = "com.google.devtools.build.lib.events.Location";
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/BUILD b/src/main/java/com/google/devtools/build/lib/syntax/BUILD
index 217b953..ceede1f 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/BUILD
+++ b/src/main/java/com/google/devtools/build/lib/syntax/BUILD
@@ -115,10 +115,10 @@
"RangeList.java",
"SelectorList.java",
"SelectorValue.java",
+ "Sequence.java",
"SkylarkClassObject.java",
"SkylarkDict.java",
"SkylarkIndexable.java",
- "SkylarkList.java",
"SkylarkNestedSet.java",
"SkylarkQueryable.java",
"SkylarkSignatureProcessor.java",
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/Eval.java b/src/main/java/com/google/devtools/build/lib/syntax/Eval.java
index 9c09635..f9d383e 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/Eval.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/Eval.java
@@ -568,8 +568,8 @@
// TODO(adonovan): move the rest into a public EvalUtils.slice() operator.
- if (object instanceof SkylarkList) {
- return ((SkylarkList<?>) object).getSlice(start, end, step, loc, thread.mutability());
+ if (object instanceof Sequence) {
+ return ((Sequence<?>) object).getSlice(start, end, step, loc, thread.mutability());
}
if (object instanceof String) {
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/EvalUtils.java b/src/main/java/com/google/devtools/build/lib/syntax/EvalUtils.java
index cf94230..2d4a739 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/EvalUtils.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/EvalUtils.java
@@ -61,7 +61,7 @@
*/
public static final Ordering<Object> SKYLARK_COMPARATOR =
new Ordering<Object>() {
- private int compareLists(SkylarkList<?> o1, SkylarkList<?> o2) {
+ private int compareLists(Sequence<?> o1, Sequence<?> o2) {
if (o1 instanceof RangeList || o2 instanceof RangeList) {
throw new ComparisonException("Cannot compare range objects");
}
@@ -91,10 +91,10 @@
o1 = SkylarkType.convertToSkylark(o1, (StarlarkThread) null);
o2 = SkylarkType.convertToSkylark(o2, (StarlarkThread) null);
- if (o1 instanceof SkylarkList
- && o2 instanceof SkylarkList
+ if (o1 instanceof Sequence
+ && o2 instanceof Sequence
&& o1 instanceof Tuple == o2 instanceof Tuple) {
- return compareLists((SkylarkList) o1, (SkylarkList) o2);
+ return compareLists((Sequence) o1, (Sequence) o2);
}
if (o1 instanceof ClassObject) {
@@ -188,9 +188,8 @@
/**
* Return the Skylark-type of {@code c}
*
- * <p>The result will be a type that Skylark understands and is either equal to {@code c}
- * or is a supertype of it. For example, all instances of (all subclasses of) SkylarkList
- * are considered to be SkylarkLists.
+ * <p>The result will be a type that Skylark understands and is either equal to {@code c} or is a
+ * supertype of it.
*
* <p>Skylark's type validation isn't equipped to deal with inheritance so we must tell it which
* of the superclasses or interfaces of {@code c} is the one that matters for type compatibility.
@@ -272,7 +271,7 @@
return "int";
} else if (c.equals(Boolean.class)) {
return "bool";
- } else if (List.class.isAssignableFrom(c)) { // This is a Java List that isn't a SkylarkList
+ } else if (List.class.isAssignableFrom(c)) { // This is a Java List that isn't a Sequence
return "List"; // This case shouldn't happen in normal code, but we keep it for debugging.
} else if (Map.class.isAssignableFrom(c)) { // This is a Java Map that isn't a SkylarkDict
return "Map"; // This case shouldn't happen in normal code, but we keep it for debugging.
@@ -306,8 +305,8 @@
throws EvalException {
if (o instanceof Collection) {
return (Collection<?>) o;
- } else if (o instanceof SkylarkList) {
- return ((SkylarkList) o).getImmutableList();
+ } else if (o instanceof Sequence) {
+ return ((Sequence) o).getImmutableList();
} else if (o instanceof Map) {
// For dictionaries we iterate through the keys only
if (o instanceof SkylarkDict) {
@@ -611,10 +610,10 @@
// TODO(bazel-team): Unify this check with the logic in getSkylarkType. Might
// break some providers whose contents don't implement SkylarkValue, aren't wrapped in
- // SkylarkList, etc.
+ // Sequence, etc.
// TODO(adonovan): this is still far too permissive. Replace with isSkylarkAcceptable.
if (result instanceof NestedSet
- || (result instanceof List && !(result instanceof SkylarkList))) {
+ || (result instanceof List && !(result instanceof Sequence))) {
throw new EvalException(
loc,
"internal error: type '"
@@ -854,9 +853,9 @@
} else if (otherFactor instanceof String) {
// Similar to Python, a factor < 1 leads to an empty string.
return Strings.repeat((String) otherFactor, Math.max(0, number));
- } else if (otherFactor instanceof SkylarkList && !(otherFactor instanceof RangeList)) {
+ } else if (otherFactor instanceof Sequence && !(otherFactor instanceof RangeList)) {
// Similar to Python, a factor < 1 leads to an empty string.
- return ((SkylarkList<?>) otherFactor).repeat(number, thread.mutability());
+ return ((Sequence<?>) otherFactor).repeat(number, thread.mutability());
}
}
throw unknownBinaryOperator(x, y, TokenKind.STAR, location);
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/MethodLibrary.java b/src/main/java/com/google/devtools/build/lib/syntax/MethodLibrary.java
index c257922..6fbdd6d 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/MethodLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/MethodLibrary.java
@@ -59,10 +59,10 @@
+ "<pre class=\"language-python\">min(2, 5, 4) == 2\n"
+ "min([5, 6, 3]) == 3</pre>",
extraPositionals =
- @Param(name = "args", type = SkylarkList.class, doc = "The elements to be checked."),
+ @Param(name = "args", type = Sequence.class, doc = "The elements to be checked."),
useLocation = true,
useStarlarkThread = true)
- public Object min(SkylarkList<?> args, Location loc, StarlarkThread thread) throws EvalException {
+ public Object min(Sequence<?> args, Location loc, StarlarkThread thread) throws EvalException {
try {
return findExtreme(args, EvalUtils.SKYLARK_COMPARATOR.reverse(), loc, thread);
} catch (ComparisonException e) {
@@ -79,10 +79,10 @@
+ "<pre class=\"language-python\">max(2, 5, 4) == 5\n"
+ "max([5, 6, 3]) == 6</pre>",
extraPositionals =
- @Param(name = "args", type = SkylarkList.class, doc = "The elements to be checked."),
+ @Param(name = "args", type = Sequence.class, doc = "The elements to be checked."),
useLocation = true,
useStarlarkThread = true)
- public Object max(SkylarkList<?> args, Location loc, StarlarkThread thread) throws EvalException {
+ public Object max(Sequence<?> args, Location loc, StarlarkThread thread) throws EvalException {
try {
return findExtreme(args, EvalUtils.SKYLARK_COMPARATOR, loc, thread);
} catch (ComparisonException e) {
@@ -92,7 +92,7 @@
/** Returns the maximum element from this list, as determined by maxOrdering. */
private static Object findExtreme(
- SkylarkList<?> args, Ordering<Object> maxOrdering, Location loc, StarlarkThread thread)
+ Sequence<?> args, Ordering<Object> maxOrdering, Location loc, StarlarkThread thread)
throws EvalException {
// Args can either be a list of items to compare, or a singleton list whose element is an
// iterable of items to compare. In either case, there must be at least one item to compare.
@@ -340,8 +340,8 @@
return ((String) x).length();
} else if (x instanceof Map) {
return ((Map<?, ?>) x).size();
- } else if (x instanceof SkylarkList) {
- return ((SkylarkList<?>) x).size();
+ } else if (x instanceof Sequence) {
+ return ((Sequence<?>) x).size();
} else if (x instanceof SkylarkNestedSet) {
if (thread.getSemantics().incompatibleDepsetIsNotIterable()) {
throw new EvalException(
@@ -637,7 +637,7 @@
public StarlarkList<?> enumerate(Object input, Integer start, Location loc, StarlarkThread thread)
throws EvalException {
int count = start;
- ArrayList<SkylarkList<?>> result = new ArrayList<>();
+ ArrayList<Sequence<?>> result = new ArrayList<>();
for (Object obj : EvalUtils.toCollection(input, loc, thread)) {
result.add(Tuple.of(count, obj));
count++;
@@ -705,7 +705,7 @@
},
useLocation = true,
useStarlarkThread = true)
- public SkylarkList<Integer> range(
+ public Sequence<Integer> range(
Integer startOrStop, Object stopOrNone, Integer step, Location loc, StarlarkThread thread)
throws EvalException {
int start;
@@ -883,7 +883,7 @@
extraPositionals = @Param(name = "args", doc = "The objects to print."),
useLocation = true,
useStarlarkThread = true)
- public NoneType print(String sep, SkylarkList<?> starargs, Location loc, StarlarkThread thread)
+ public NoneType print(String sep, Sequence<?> starargs, Location loc, StarlarkThread thread)
throws EvalException {
try {
String msg = starargs.stream().map(Printer::debugPrint).collect(joining(sep));
@@ -993,7 +993,7 @@
name = "transitive",
named = true,
positional = false,
- type = SkylarkList.class,
+ type = Sequence.class,
generic1 = SkylarkNestedSet.class,
noneable = true,
doc = "A list of depsets whose elements will become indirect elements of the depset.",
@@ -1076,8 +1076,8 @@
private static <T> List<T> listFromNoneable(
Object listOrNone, Class<T> objectType, String paramName) throws EvalException {
if (listOrNone != Starlark.NONE) {
- SkylarkType.checkType(listOrNone, SkylarkList.class, paramName);
- return ((SkylarkList<?>) listOrNone).getContents(objectType, paramName);
+ SkylarkType.checkType(listOrNone, Sequence.class, paramName);
+ return ((Sequence<?>) listOrNone).getContents(objectType, paramName);
} else {
return ImmutableList.of();
}
@@ -1100,18 +1100,17 @@
// Non-legacy behavior: either 'transitive' or 'direct' were specified.
Iterable<Object> directElements;
if (direct != Starlark.NONE) {
- SkylarkType.checkType(direct, SkylarkList.class, "direct");
- directElements = ((SkylarkList<?>) direct).getContents(Object.class, "direct");
+ SkylarkType.checkType(direct, Sequence.class, "direct");
+ directElements = ((Sequence<?>) direct).getContents(Object.class, "direct");
} else {
- SkylarkType.checkType(items, SkylarkList.class, "items");
- directElements = ((SkylarkList<?>) items).getContents(Object.class, "items");
+ SkylarkType.checkType(items, Sequence.class, "items");
+ directElements = ((Sequence<?>) items).getContents(Object.class, "items");
}
Iterable<SkylarkNestedSet> transitiveList;
if (transitive != Starlark.NONE) {
- SkylarkType.checkType(transitive, SkylarkList.class, "transitive");
- transitiveList =
- ((SkylarkList<?>) transitive).getContents(SkylarkNestedSet.class, "transitive");
+ SkylarkType.checkType(transitive, Sequence.class, "transitive");
+ transitiveList = ((Sequence<?>) transitive).getContents(SkylarkNestedSet.class, "transitive");
} else {
transitiveList = ImmutableList.of();
}
@@ -1126,7 +1125,7 @@
}
private static boolean isEmptySkylarkList(Object o) {
- return o instanceof SkylarkList && ((SkylarkList) o).isEmpty();
+ return o instanceof Sequence && ((Sequence) o).isEmpty();
}
/**
@@ -1187,7 +1186,7 @@
extraPositionals = @Param(name = "args", doc = "lists to zip."),
useLocation = true,
useStarlarkThread = true)
- public StarlarkList<?> zip(SkylarkList<?> args, Location loc, StarlarkThread thread)
+ public StarlarkList<?> zip(Sequence<?> args, Location loc, StarlarkThread thread)
throws EvalException {
Iterator<?>[] iterators = new Iterator<?>[args.size()];
for (int i = 0; i < args.size(); i++) {
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/RangeList.java b/src/main/java/com/google/devtools/build/lib/syntax/RangeList.java
index 79cb476..921d5a7 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/RangeList.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/RangeList.java
@@ -51,7 +51,7 @@
+ "range(10)[::2] # range(0, 10, 2)\n"
+ "range(10)[3:0:-1] # range(3, 0, -1)</pre>"
+ "Ranges are immutable, as in Python 3.")
-final class RangeList extends SkylarkList<Integer> {
+final class RangeList extends Sequence<Integer> {
private final int step;
private final int start;
@@ -181,7 +181,7 @@
}
@Override
- public SkylarkList<Integer> getSlice(
+ public Sequence<Integer> getSlice(
Object start, Object end, Object step, Location loc, Mutability mutability)
throws EvalException {
Slice slice = Slice.from(size(), start, end, step, loc);
@@ -192,7 +192,7 @@
}
@Override
- public SkylarkList<Integer> repeat(int times, Mutability mutability) {
+ public Sequence<Integer> repeat(int times, Mutability mutability) {
throw new UnsupportedOperationException("Ranges do not support repetition.");
}
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkList.java b/src/main/java/com/google/devtools/build/lib/syntax/Sequence.java
similarity index 85%
rename from src/main/java/com/google/devtools/build/lib/syntax/SkylarkList.java
rename to src/main/java/com/google/devtools/build/lib/syntax/Sequence.java
index 626ac16..03eb01f 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkList.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/Sequence.java
@@ -26,18 +26,17 @@
import javax.annotation.Nullable;
/**
- * A Skylark list or tuple.
+ * A Sequence is a finite sequence of Starlark values, such as a list or tuple.
*
* <p>Although this implements the {@link List} interface, it is not mutable via that interface's
* methods. Instead, use the mutators that take in a {@link Mutability} object.
*/
-// TODO(adonovan): rename to Sequence.
@SkylarkModule(
name = "sequence",
documented = false,
category = SkylarkModuleCategory.BUILTIN,
doc = "common type of lists and tuples.")
-public abstract class SkylarkList<E> extends BaseMutableList<E>
+public abstract class Sequence<E> extends BaseMutableList<E>
implements List<E>, RandomAccess, SkylarkIndexable {
@Override
@@ -45,13 +44,11 @@
return !isEmpty();
}
- /**
- * Returns an ImmutableList object with the current underlying contents of this SkylarkList.
- */
+ /** Returns an ImmutableList object with the current underlying contents of this Sequence. */
public abstract ImmutableList<E> getImmutableList();
/**
- * Retrieve an entry from a SkylarkList.
+ * Retrieve an entry from a Sequence.
*
* @param key the index
* @param loc a {@link Location} in case of error
@@ -75,7 +72,7 @@
}
/**
- * Constructs a version of this {@code SkylarkList} containing just the items in a slice.
+ * Constructs a version of this {@code Sequence} containing just the items in a slice.
*
* <p>{@code mutability} will be used for the resulting list. If it is null, the list will be
* immutable. For {@code Tuple}s, which are always immutable, this argument is ignored.
@@ -83,17 +80,17 @@
* @see EvalUtils#getSliceIndices
* @throws EvalException if the key is invalid; uses {@code loc} for error reporting
*/
- public abstract SkylarkList<E> getSlice(
+ public abstract Sequence<E> getSlice(
Object start, Object end, Object step, Location loc, Mutability mutability)
throws EvalException;
/**
- * Constructs a repetition of this {@code SkylarkList}.
+ * Constructs a repetition of this {@code Sequence}.
*
* <p>{@code mutability} will be used for the resulting list. If it is null, the list will be
* immutable. For {@code Tuple}s, which are always immutable, this argument is ignored.
*/
- public abstract SkylarkList<E> repeat(int times, Mutability mutability);
+ public abstract Sequence<E> repeat(int times, Mutability mutability);
@Override
public void repr(SkylarkPrinter printer) {
@@ -106,7 +103,7 @@
}
// Note that the following two functions slightly violate the Java List protocol,
- // in that it does NOT consider that a SkylarkList .equals() an arbitrary List with same contents.
+ // in that it does NOT consider that a Sequence .equals() an arbitrary List with same contents.
// This is because we use .equals() to model skylark equality, which like Python
// distinguishes a StarlarkList from a Tuple.
@Override
@@ -114,7 +111,7 @@
return (this == object)
|| ((object != null)
&& (this.getClass() == object.getClass())
- && getContentsUnsafe().equals(((SkylarkList) object).getContentsUnsafe()));
+ && getContentsUnsafe().equals(((Sequence) object).getContentsUnsafe()));
}
@Override
@@ -146,7 +143,7 @@
}
/**
- * If {@code obj} is a {@code SkylarkList}, casts it to an unmodifiable {@code List<T>} after
+ * If {@code obj} is a {@code Sequence}, casts it to an unmodifiable {@code List<T>} after
* checking that each element has type {@code type}. If {@code obj} is {@code None} or null,
* treats it as an empty list. For all other values, throws an {@link EvalException}.
*
@@ -157,13 +154,12 @@
* @param description a description of the argument being converted, or null, for debugging
*/
public static <T> List<T> castSkylarkListOrNoneToList(
- Object obj, Class<T> type, @Nullable String description)
- throws EvalException {
+ Object obj, Class<T> type, @Nullable String description) throws EvalException {
if (EvalUtils.isNullOrNone(obj)) {
return ImmutableList.of();
}
- if (obj instanceof SkylarkList) {
- return ((SkylarkList<?>) obj).getContents(type, description);
+ if (obj instanceof Sequence) {
+ return ((Sequence<?>) obj).getContents(type, description);
}
throw new EvalException(null,
String.format("Illegal argument: %s is not of expected type list or NoneType",
@@ -194,7 +190,7 @@
// such a method, we may no longer need to take null as a possible value for the Mutability or
// StarlarkThread. That in turn would allow us to overload StarlarkList#of to take either a
// Mutability or StarlarkThread.
- public static <E> SkylarkList<E> createImmutable(Iterable<? extends E> contents) {
+ public static <E> Sequence<E> createImmutable(Iterable<? extends E> contents) {
return StarlarkList.copyOf(Mutability.IMMUTABLE, contents);
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkDict.java b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkDict.java
index 6d4bf82..1fca545 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkDict.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkDict.java
@@ -74,7 +74,7 @@
// this, as Java parameterized types are not accessible at runtime.
// Every cast to a parameterized type is a lie.
// Unchecked warnings should be treated as errors.
-// Ditto SkylarkList.
+// Ditto Sequence.
public final class SkylarkDict<K, V> extends MutableMap<K, V>
implements Map<K, V>, SkylarkIndexable {
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkNestedSet.java b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkNestedSet.java
index 96688e7..8b05f4d 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkNestedSet.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkNestedSet.java
@@ -128,10 +128,10 @@
contentType, nestedSet.contentType, /*lastInsertedType=*/ null, loc);
transitiveItemsBuilder.add(nestedSet.set);
}
- } else if (item instanceof SkylarkList) {
+ } else if (item instanceof Sequence) {
SkylarkType lastInsertedType = null;
// TODO(bazel-team): we should check ImmutableList here but it screws up genrule at line 43
- for (Object object : (SkylarkList) item) {
+ for (Object object : (Sequence) item) {
SkylarkType elemType = SkylarkType.of(object);
contentType = getTypeAfterInsert(contentType, elemType, lastInsertedType, loc);
lastInsertedType = elemType;
@@ -162,7 +162,7 @@
static SkylarkNestedSet of(Order order, Object item, Location loc) throws EvalException {
// TODO(adonovan): rethink this API. TOP is a pessimistic type for item, and it's wrong
- // (should be BOTTOM) if item is an empty SkylarkNestedSet or SkylarkList.
+ // (should be BOTTOM) if item is an empty SkylarkNestedSet or Sequence.
return of(order, SkylarkType.TOP, item, loc, null);
}
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkType.java b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkType.java
index 28de42e..43b3767 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkType.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkType.java
@@ -178,7 +178,7 @@
// that doesn't make a difference between list and tuple, so that functions can be declared
// that keep not making the difference. Going forward, though, we should investigate whether
// we ever want to use this type, and if not, make sure no existing client code uses it.
- @AutoCodec public static final Simple SEQUENCE = Simple.forClass(SkylarkList.class);
+ @AutoCodec public static final Simple SEQUENCE = Simple.forClass(Sequence.class);
/** The LIST type, that contains all StarlarkList-s */
@AutoCodec public static final Simple LIST = Simple.forClass(StarlarkList.class);
@@ -350,7 +350,7 @@
public static class Combination extends SkylarkType {
// For the moment, we can only combine a Simple type with a Simple type,
// and the first one has to be a Java generic class,
- // and in practice actually one of SkylarkList or SkylarkNestedSet
+ // and in practice actually one of Sequence or SkylarkNestedSet
private final SkylarkType genericType; // actually always a Simple, for now.
private final SkylarkType argType; // not always Simple
@@ -767,7 +767,7 @@
* Converts an object to a Skylark-compatible type if possible.
*/
public static Object convertToSkylark(Object object, @Nullable Mutability mutability) {
- if (object instanceof List && !(object instanceof SkylarkList)) {
+ if (object instanceof List && !(object instanceof Sequence)) {
return StarlarkList.copyOf(mutability, (List<?>) object);
}
if (object instanceof SkylarkValue) {
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/StarlarkList.java b/src/main/java/com/google/devtools/build/lib/syntax/StarlarkList.java
index 1764b54..ec6caaf 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/StarlarkList.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/StarlarkList.java
@@ -46,7 +46,7 @@
+ "['a', 'b', 'c', 'd'][::2] # ['a', 'c']\n"
+ "['a', 'b', 'c', 'd'][3:0:-1] # ['d', 'c', 'b']</pre>"
+ "Lists are mutable, as in Python.")
-public final class StarlarkList<E> extends SkylarkList<E> {
+public final class StarlarkList<E> extends Sequence<E> {
private final ArrayList<E> contents;
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/StringModule.java b/src/main/java/com/google/devtools/build/lib/syntax/StringModule.java
index 5831753..4225ec0 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/StringModule.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/StringModule.java
@@ -766,7 +766,7 @@
defaultValue = "False",
doc = "Whether the line breaks should be included in the resulting list.")
})
- public SkylarkList<String> splitLines(String self, Boolean keepEnds) throws EvalException {
+ public Sequence<String> splitLines(String self, Boolean keepEnds) throws EvalException {
List<String> result = new ArrayList<>();
Matcher matcher = SPLIT_LINES_PATTERN.matcher(self);
while (matcher.find()) {
@@ -782,7 +782,7 @@
result.add(line);
}
}
- return SkylarkList.createImmutable(result);
+ return Sequence.createImmutable(result);
}
@SkylarkCallable(
@@ -965,12 +965,12 @@
+ "Equivalent to <code>[s[i] for i in range(len(s))]</code>, except that the "
+ "returned value might not be a list.",
parameters = {@Param(name = "self", type = String.class, doc = "This string.")})
- public SkylarkList<String> elems(String self) throws EvalException {
+ public Sequence<String> elems(String self) throws EvalException {
ImmutableList.Builder<String> builder = new ImmutableList.Builder<>();
for (char c : self.toCharArray()) {
builder.add(String.valueOf(c));
}
- return SkylarkList.createImmutable(builder.build());
+ return Sequence.createImmutable(builder.build());
}
@SkylarkCallable(
@@ -1048,7 +1048,7 @@
extraPositionals =
@Param(
name = "args",
- type = SkylarkList.class,
+ type = Sequence.class,
defaultValue = "()",
doc = "List of arguments."),
extraKeywords =
@@ -1058,7 +1058,7 @@
defaultValue = "{}",
doc = "Dictionary of arguments."),
useLocation = true)
- public String format(String self, SkylarkList<?> args, SkylarkDict<?, ?> kwargs, Location loc)
+ public String format(String self, Sequence<?> args, SkylarkDict<?, ?> kwargs, Location loc)
throws EvalException {
@SuppressWarnings("unchecked")
List<Object> argObjects = (List<Object>) args.getImmutableList();
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/Tuple.java b/src/main/java/com/google/devtools/build/lib/syntax/Tuple.java
index 91f5b855..9067066 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/Tuple.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/Tuple.java
@@ -41,7 +41,7 @@
+ "('a', 'b', 'c', 'd')[::2] # ('a', 'c')\n"
+ "('a', 'b', 'c', 'd')[3:0:-1] # ('d', 'c', 'b')</pre>"
+ "Tuples are immutable, therefore <code>x[1] = \"a\"</code> is not supported.")
-public final class Tuple<E> extends SkylarkList<E> {
+public final class Tuple<E> extends Sequence<E> {
private final ImmutableList<E> contents;
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkAttrApi.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkAttrApi.java
index 25c79b5..71cbb58 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkAttrApi.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkAttrApi.java
@@ -20,8 +20,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.FuncallExpression;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import com.google.devtools.build.skydoc.rendering.proto.StardocOutputProtos.AttributeType;
import java.util.ArrayList;
@@ -39,7 +39,7 @@
Integer defaultInt,
String doc,
Boolean mandatory,
- SkylarkList<?> values,
+ Sequence<?> values,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException {
@@ -51,7 +51,7 @@
String defaultString,
String doc,
Boolean mandatory,
- SkylarkList<?> values,
+ Sequence<?> values,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException {
@@ -71,11 +71,11 @@
Object allowFiles,
Object allowSingleFile,
Boolean mandatory,
- SkylarkList<?> providers,
+ Sequence<?> providers,
Object allowRules,
Boolean singleFile,
Object cfg,
- SkylarkList<?> aspects,
+ Sequence<?> aspects,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException {
@@ -91,7 +91,7 @@
Boolean mandatory,
Boolean nonEmpty,
Boolean allowEmpty,
- SkylarkList<?> defaultList,
+ Sequence<?> defaultList,
String doc,
FuncallExpression ast,
StarlarkThread thread)
@@ -105,7 +105,7 @@
Boolean mandatory,
Boolean nonEmpty,
Boolean allowEmpty,
- SkylarkList<?> defaultList,
+ Sequence<?> defaultList,
String doc,
FuncallExpression ast,
StarlarkThread thread)
@@ -121,12 +121,12 @@
String doc,
Object allowFiles,
Object allowRules,
- SkylarkList<?> providers,
- SkylarkList<?> flags,
+ Sequence<?> providers,
+ Sequence<?> flags,
Boolean mandatory,
Boolean nonEmpty,
Object cfg,
- SkylarkList<?> aspects,
+ Sequence<?> aspects,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException {
@@ -144,12 +144,12 @@
String doc,
Object allowFiles,
Object allowRules,
- SkylarkList<?> providers,
- SkylarkList<?> flags,
+ Sequence<?> providers,
+ Sequence<?> flags,
Boolean mandatory,
Boolean nonEmpty,
Object cfg,
- SkylarkList<?> aspects,
+ Sequence<?> aspects,
FuncallExpression ast,
StarlarkThread thread)
throws EvalException {
@@ -243,13 +243,13 @@
* each of the inner lists is a separate group.
*/
private static List<List<String>> allProviderNameGroups(
- SkylarkList<?> providers, StarlarkThread thread) {
+ Sequence<?> providers, StarlarkThread thread) {
List<List<String>> allNameGroups = new ArrayList<>();
for (Object object : providers) {
List<String> providerNameGroup;
- if (object instanceof SkylarkList) {
- SkylarkList<?> group = (SkylarkList<?>) object;
+ if (object instanceof Sequence) {
+ Sequence<?> group = (Sequence<?>) object;
providerNameGroup = parseProviderGroup(group, thread);
allNameGroups.add(providerNameGroup);
} else {
@@ -267,7 +267,7 @@
* <p>Each item in the group may be either a {@link ProviderApi} or a {@code String} (representing
* a legacy provider).
*/
- private static List<String> parseProviderGroup(SkylarkList<?> group, StarlarkThread thread) {
+ private static List<String> parseProviderGroup(Sequence<?> group, StarlarkThread thread) {
List<String> providerNameGroup = new ArrayList<>();
for (Object object : group) {
if (object instanceof ProviderApi) {
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkNativeModuleApi.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkNativeModuleApi.java
index 25eca0f..32554bf 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkNativeModuleApi.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkNativeModuleApi.java
@@ -21,8 +21,8 @@
import com.google.devtools.build.lib.syntax.ClassObject;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.NoneType;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkList;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import javax.annotation.Nullable;
@@ -31,9 +31,9 @@
public class FakeSkylarkNativeModuleApi implements SkylarkNativeModuleApi, ClassObject {
@Override
- public SkylarkList<?> glob(
- SkylarkList<?> include,
- SkylarkList<?> exclude,
+ public Sequence<?> glob(
+ Sequence<?> include,
+ Sequence<?> exclude,
Integer excludeDirectories,
Object allowEmpty,
Location loc,
@@ -56,18 +56,14 @@
@Override
public NoneType packageGroup(
- String name,
- SkylarkList<?> packages,
- SkylarkList<?> includes,
- Location loc,
- StarlarkThread thread)
+ String name, Sequence<?> packages, Sequence<?> includes, Location loc, StarlarkThread thread)
throws EvalException {
return null;
}
@Override
public NoneType exportsFiles(
- SkylarkList<?> srcs, Object visibility, Object licenses, Location loc, StarlarkThread thread)
+ Sequence<?> srcs, Object visibility, Object licenses, Location loc, StarlarkThread thread)
throws EvalException {
return null;
}
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkRuleFunctionsApi.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkRuleFunctionsApi.java
index 33fbff7..6dc554e 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkRuleFunctionsApi.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/FakeSkylarkRuleFunctionsApi.java
@@ -27,8 +27,8 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.FuncallExpression;
import com.google.devtools.build.lib.syntax.FunctionSignature;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkType;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkFunction;
@@ -90,13 +90,16 @@
FakeProviderApi fakeProvider = new FakeProviderApi();
// Field documentation will be output preserving the order in which the fields are listed.
ImmutableList.Builder<ProviderFieldInfo> providerFieldInfos = ImmutableList.builder();
- if (fields instanceof SkylarkList) {
+ if (fields instanceof Sequence) {
@SuppressWarnings("unchecked")
- SkylarkList<String> fieldNames = (SkylarkList<String>)
- SkylarkType.cast(
- fields,
- SkylarkList.class, String.class, location,
- "Expected list of strings or dictionary of string -> string for 'fields'");
+ Sequence<String> fieldNames =
+ (Sequence<String>)
+ SkylarkType.cast(
+ fields,
+ Sequence.class,
+ String.class,
+ location,
+ "Expected list of strings or dictionary of string -> string for 'fields'");
for (String fieldName : fieldNames) {
providerFieldInfos.add(asProviderFieldInfo(fieldName, "(Undocumented)"));
}
@@ -134,13 +137,13 @@
Object implicitOutputs,
Boolean executable,
Boolean outputToGenfiles,
- SkylarkList<?> fragments,
- SkylarkList<?> hostFragments,
+ Sequence<?> fragments,
+ Sequence<?> hostFragments,
Boolean skylarkTestable,
- SkylarkList<?> toolchains,
+ Sequence<?> toolchains,
String doc,
- SkylarkList<?> providesArg,
- SkylarkList<?> execCompatibleWith,
+ Sequence<?> providesArg,
+ Sequence<?> execCompatibleWith,
Object analysisTest,
Object buildSetting,
Object cfg,
@@ -188,13 +191,13 @@
@Override
public SkylarkAspectApi aspect(
StarlarkFunction implementation,
- SkylarkList<?> attributeAspects,
+ Sequence<?> attributeAspects,
Object attrs,
- SkylarkList<?> requiredAspectProvidersArg,
- SkylarkList<?> providesArg,
- SkylarkList<?> fragments,
- SkylarkList<?> hostFragments,
- SkylarkList<?> toolchains,
+ Sequence<?> requiredAspectProvidersArg,
+ Sequence<?> providesArg,
+ Sequence<?> fragments,
+ Sequence<?> hostFragments,
+ Sequence<?> toolchains,
String doc,
Boolean applyToFiles,
FuncallExpression ast,
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/android/FakeAndroidResourcesInfo.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/android/FakeAndroidResourcesInfo.java
index 6858e68..87d706c 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/android/FakeAndroidResourcesInfo.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/android/FakeAndroidResourcesInfo.java
@@ -23,7 +23,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.android.ValidatedAndroidDataApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
/** Fake implementation of {@link AndroidResourcesInfoApi}. */
@@ -190,7 +190,7 @@
}
@Override
- public SkylarkList<FileApi> getResourcesList() {
+ public Sequence<FileApi> getResourcesList() {
return null;
}
}
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeAppleCommon.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeAppleCommon.java
index f3702c1..cd1b0ba 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeAppleCommon.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeAppleCommon.java
@@ -29,8 +29,8 @@
import com.google.devtools.build.lib.skylarkbuildapi.apple.DottedVersionApi;
import com.google.devtools.build.lib.skylarkbuildapi.apple.ObjcProviderApi;
import com.google.devtools.build.lib.skylarkbuildapi.apple.XcodeConfigProviderApi;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import com.google.devtools.build.skydoc.fakebuildapi.FakeProviderApi;
import com.google.devtools.build.skydoc.fakebuildapi.FakeSkylarkAspect;
@@ -120,8 +120,8 @@
@Override
public StructApi linkMultiArchBinary(
SkylarkRuleContextApi skylarkRuleContext,
- SkylarkList<?> extraLinkopts,
- SkylarkList<?> extraLinkInputs,
+ Sequence<?> extraLinkopts,
+ Sequence<?> extraLinkInputs,
StarlarkThread thread) {
return new FakeStructApi();
}
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeObjcProvider.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeObjcProvider.java
index f645635..1a5f330 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeObjcProvider.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeObjcProvider.java
@@ -18,7 +18,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.FileApi;
import com.google.devtools.build.lib.skylarkbuildapi.apple.ObjcProviderApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
/**
@@ -57,7 +57,7 @@
}
@Override
- public SkylarkList<FileApi> directHeaders() {
+ public Sequence<FileApi> directHeaders() {
return null;
}
@@ -127,7 +127,7 @@
}
@Override
- public SkylarkList<FileApi> directModuleMaps() {
+ public Sequence<FileApi> directModuleMaps() {
return null;
}
@@ -162,7 +162,7 @@
}
@Override
- public SkylarkList<FileApi> directSources() {
+ public Sequence<FileApi> directSources() {
return null;
}
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/config/FakeConfigGlobalLibrary.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/config/FakeConfigGlobalLibrary.java
index fd422f3..28c7506 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/config/FakeConfigGlobalLibrary.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/config/FakeConfigGlobalLibrary.java
@@ -18,8 +18,8 @@
import com.google.devtools.build.lib.skylarkbuildapi.config.ConfigGlobalLibraryApi;
import com.google.devtools.build.lib.skylarkbuildapi.config.ConfigurationTransitionApi;
import com.google.devtools.build.lib.syntax.BaseFunction;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -31,8 +31,8 @@
@Override
public ConfigurationTransitionApi transition(
BaseFunction implementation,
- SkylarkList<?> inputs,
- SkylarkList<?> outputs,
+ Sequence<?> inputs,
+ Sequence<?> outputs,
Location location,
StarlarkThread thread) {
return new FakeConfigurationTransition();
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakeCcModule.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakeCcModule.java
index 8604ea9..537065b 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakeCcModule.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakeCcModule.java
@@ -35,8 +35,8 @@
import com.google.devtools.build.lib.skylarkbuildapi.cpp.LibraryToLinkApi;
import com.google.devtools.build.lib.skylarkbuildapi.cpp.LinkerInputApi;
import com.google.devtools.build.lib.syntax.EvalException;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import com.google.devtools.build.lib.syntax.Tuple;
import com.google.devtools.build.skydoc.fakebuildapi.FakeProviderApi;
@@ -67,8 +67,8 @@
public FeatureConfigurationApi configureFeatures(
Object ruleContextOrNone,
CcToolchainProviderApi<FeatureConfigurationApi> toolchain,
- SkylarkList<?> requestedFeatures,
- SkylarkList<?> unsupportedFeatures)
+ Sequence<?> requestedFeatures,
+ Sequence<?> unsupportedFeatures)
throws EvalException {
return null;
}
@@ -79,9 +79,9 @@
}
@Override
- public SkylarkList<String> getExecutionRequirements(
+ public Sequence<String> getExecutionRequirements(
FeatureConfigurationApi featureConfiguration, String actionName) {
- return SkylarkList.createImmutable(ImmutableList.of());
+ return Sequence.createImmutable(ImmutableList.of());
}
@Override
@@ -95,8 +95,10 @@
}
@Override
- public SkylarkList<String> getCommandLine(FeatureConfigurationApi featureConfiguration,
- String actionName, CcToolchainVariablesApi variables) {
+ public Sequence<String> getCommandLine(
+ FeatureConfigurationApi featureConfiguration,
+ String actionName,
+ CcToolchainVariablesApi variables) {
return null;
}
@@ -178,7 +180,7 @@
}
@Override
- public CcInfoApi mergeCcInfos(SkylarkList<?> ccInfos) {
+ public CcInfoApi mergeCcInfos(Sequence<?> ccInfos) {
return null;
}
@@ -210,21 +212,21 @@
SkylarkActionFactoryApi skylarkActionFactoryApi,
FeatureConfigurationApi skylarkFeatureConfiguration,
CcToolchainProviderApi<FeatureConfigurationApi> skylarkCcToolchainProvider,
- SkylarkList<?> sources,
- SkylarkList<?> publicHeaders,
- SkylarkList<?> privateHeaders,
- SkylarkList<?> includes,
- SkylarkList<?> quoteIncludes,
- SkylarkList<?> defines,
- SkylarkList<?> localDefines,
- SkylarkList<?> systemIncludes,
- SkylarkList<?> frameworkIncludes,
- SkylarkList<?> userCompileFlags,
- SkylarkList<?> ccCompilationContexts,
+ Sequence<?> sources,
+ Sequence<?> publicHeaders,
+ Sequence<?> privateHeaders,
+ Sequence<?> includes,
+ Sequence<?> quoteIncludes,
+ Sequence<?> defines,
+ Sequence<?> localDefines,
+ Sequence<?> systemIncludes,
+ Sequence<?> frameworkIncludes,
+ Sequence<?> userCompileFlags,
+ Sequence<?> ccCompilationContexts,
String name,
boolean disallowPicOutputs,
boolean disallowNopicOutputs,
- SkylarkList<?> additionalInputs,
+ Sequence<?> additionalInputs,
Location location,
StarlarkThread thread)
throws EvalException, InterruptedException {
@@ -237,12 +239,12 @@
FeatureConfigurationApi skylarkFeatureConfiguration,
CcToolchainProviderApi<FeatureConfigurationApi> skylarkCcToolchainProvider,
CcCompilationOutputsApi<FileApi> compilationOutputs,
- SkylarkList<?> userLinkFlags,
- SkylarkList<?> ccLinkingContextApis,
+ Sequence<?> userLinkFlags,
+ Sequence<?> ccLinkingContextApis,
String name,
String language,
boolean alwayslink,
- SkylarkList<?> nonCodeInputs,
+ Sequence<?> nonCodeInputs,
boolean disallowStaticLibraries,
boolean disallowDynamicLibraries,
Object grepIncludes,
@@ -258,13 +260,13 @@
FeatureConfigurationApi skylarkFeatureConfiguration,
CcToolchainProviderApi<FeatureConfigurationApi> skylarkCcToolchainProvider,
Object compilationOutputs,
- SkylarkList<?> userLinkFlags,
- SkylarkList<?> linkingContexts,
+ Sequence<?> userLinkFlags,
+ Sequence<?> linkingContexts,
String name,
String language,
String outputType,
boolean linkDepsStatically,
- SkylarkList<?> additionalInputs,
+ Sequence<?> additionalInputs,
Object grepIncludes,
Location location,
StarlarkThread thread)
@@ -275,10 +277,10 @@
@Override
public CcToolchainConfigInfoApi ccToolchainConfigInfoFromSkylark(
SkylarkRuleContextApi skylarkRuleContext,
- SkylarkList<?> features,
- SkylarkList<?> actionConfigs,
- SkylarkList<?> artifactNamePatterns,
- SkylarkList<?> cxxBuiltInIncludeDirectories,
+ Sequence<?> features,
+ Sequence<?> actionConfigs,
+ Sequence<?> artifactNamePatterns,
+ Sequence<?> cxxBuiltInIncludeDirectories,
String toolchainIdentifier,
String hostSystemName,
String targetSystemName,
@@ -287,8 +289,8 @@
String compiler,
String abiVersion,
String abiLibcVersion,
- SkylarkList<?> toolPaths,
- SkylarkList<?> makeVariables,
+ Sequence<?> toolPaths,
+ Sequence<?> makeVariables,
Object builtinSysroot,
Object ccTargetOs)
throws EvalException {
@@ -303,7 +305,7 @@
@Override
public CcCompilationOutputsApi<FileApi> mergeCcCompilationOutputsFromSkylark(
- SkylarkList<?> compilationOutputs) {
+ Sequence<?> compilationOutputs) {
return null;
}
}
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakeGoWrapCcHelper.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakeGoWrapCcHelper.java
index a140c5d..422c0dd 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakeGoWrapCcHelper.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakeGoWrapCcHelper.java
@@ -32,7 +32,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.go.GoConfigurationApi;
import com.google.devtools.build.lib.skylarkbuildapi.go.GoContextInfoApi;
import com.google.devtools.build.lib.skylarkbuildapi.go.GoPackageInfoApi;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Tuple;
@@ -89,8 +89,8 @@
public Tuple<FileApi> createGoCompileActions(
SkylarkRuleContextApi skylarkRuleContext,
CcToolchainProviderApi<FeatureConfigurationApi> ccToolchainProvider,
- SkylarkList<?> srcs,
- SkylarkList<?> deps) {
+ Sequence<?> srcs,
+ Sequence<?> deps) {
return null;
}
@@ -98,8 +98,8 @@
public Tuple<FileApi> createGoCompileActionsGopkg(
SkylarkRuleContextApi skylarkRuleContext,
CcToolchainProviderApi<FeatureConfigurationApi> ccToolchainProvider,
- SkylarkList<?> srcs,
- SkylarkList<?> deps) {
+ Sequence<?> srcs,
+ Sequence<?> deps) {
return null;
}
@@ -138,8 +138,8 @@
CcToolchainProviderApi<FeatureConfigurationApi> ccToolchain,
FileApi ccFile,
FileApi headerFile,
- SkylarkList<?> depCcCompilationContexts,
- SkylarkList<?> targetCopts) {
+ Sequence<?> depCcCompilationContexts,
+ Sequence<?> targetCopts) {
return null;
}
@@ -162,10 +162,10 @@
CcCompilationContextApi wrapperCcCompilationContext,
SkylarkNestedSet swigIncludes,
FileApi swigSource,
- SkylarkList<?> subParameters,
+ Sequence<?> subParameters,
FileApi ccFile,
FileApi headerFile,
- SkylarkList<?> outputFiles,
+ Sequence<?> outputFiles,
Object outDir,
Object javaDir,
SkylarkNestedSet auxiliaryInputs,
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakePyWrapCcHelper.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakePyWrapCcHelper.java
index 2335d76..5f74293 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakePyWrapCcHelper.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/cpp/FakePyWrapCcHelper.java
@@ -25,7 +25,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.cpp.PyWrapCcHelperApi;
import com.google.devtools.build.lib.skylarkbuildapi.cpp.PyWrapCcInfoApi;
import com.google.devtools.build.lib.skylarkbuildapi.cpp.WrapCcIncludeProviderApi;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
/** Fake implementation of {@link PyWrapCcHelperApi}. */
@@ -41,7 +41,7 @@
WrapCcIncludeProviderApi> {
@Override
- public SkylarkList<String> getPyExtensionLinkopts(SkylarkRuleContextApi skylarkRuleContext) {
+ public Sequence<String> getPyExtensionLinkopts(SkylarkRuleContextApi skylarkRuleContext) {
return null;
}
@@ -95,10 +95,10 @@
CcCompilationContextApi wrapperCcCompilationContext,
SkylarkNestedSet swigIncludes,
FileApi swigSource,
- SkylarkList<?> subParameters,
+ Sequence<?> subParameters,
FileApi ccFile,
FileApi headerFile,
- SkylarkList<?> outputFiles,
+ Sequence<?> outputFiles,
Object outDir,
Object javaDir,
SkylarkNestedSet auxiliaryInputs,
@@ -112,8 +112,8 @@
CcToolchainProviderApi<FeatureConfigurationApi> ccToolchain,
FileApi ccFile,
FileApi headerFile,
- SkylarkList<?> depCcCompilationContexts,
- SkylarkList<?> targetCopts) {
+ Sequence<?> depCcCompilationContexts,
+ Sequence<?> targetCopts) {
return null;
}
}
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaCommon.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaCommon.java
index 7ad40e0..3bdab61 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaCommon.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaCommon.java
@@ -24,7 +24,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.java.JavaCommonApi;
import com.google.devtools.build.lib.skylarkbuildapi.java.JavaToolchainSkylarkApiProviderApi;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -48,22 +48,22 @@
@Override
public FakeJavaInfo createJavaCompileAction(
SkylarkRuleContextApi skylarkRuleContext,
- SkylarkList<?> sourceJars,
- SkylarkList<?> sourceFiles,
+ Sequence<?> sourceJars,
+ Sequence<?> sourceFiles,
FileApi outputJar,
Object outputSourceJar,
- SkylarkList<?> javacOpts,
- SkylarkList<?> deps,
- SkylarkList<?> exports,
- SkylarkList<?> plugins,
- SkylarkList<?> exportedPlugins,
- SkylarkList<?> annotationProcessorAdditionalInputs,
- SkylarkList<?> annotationProcessorAdditionalOutputs,
+ Sequence<?> javacOpts,
+ Sequence<?> deps,
+ Sequence<?> exports,
+ Sequence<?> plugins,
+ Sequence<?> exportedPlugins,
+ Sequence<?> annotationProcessorAdditionalInputs,
+ Sequence<?> annotationProcessorAdditionalOutputs,
String strictDepsMode,
FakeJavaToolchainSkylarkApiProviderApi javaToolchain,
FakeJavaRuntimeInfoApi hostJavabase,
- SkylarkList<?> sourcepathEntries,
- SkylarkList<?> resources,
+ Sequence<?> sourcepathEntries,
+ Sequence<?> resources,
Boolean neverlink,
Location loc,
StarlarkThread thread)
@@ -99,8 +99,8 @@
public FileApi packSources(
SkylarkActionFactoryApi actions,
FileApi outputJar,
- SkylarkList<?> sourceFiles,
- SkylarkList<?> sourceJars,
+ Sequence<?> sourceFiles,
+ Sequence<?> sourceJars,
FakeJavaToolchainSkylarkApiProviderApi javaToolchain,
FakeJavaRuntimeInfoApi hostJavabase,
Location location,
@@ -116,7 +116,7 @@
}
@Override
- public FakeJavaInfo mergeJavaProviders(SkylarkList<?> providers) {
+ public FakeJavaInfo mergeJavaProviders(Sequence<?> providers) {
return new FakeJavaInfo();
}
@@ -146,7 +146,7 @@
}
@Override
- public FakeJavaInfo addConstraints(FakeJavaInfo javaInfo, SkylarkList<?> constraints) {
+ public FakeJavaInfo addConstraints(FakeJavaInfo javaInfo, Sequence<?> constraints) {
return new FakeJavaInfo();
}
@@ -163,7 +163,7 @@
@Override
public FakeJavaInfo addCompileTimeJavaDependencyArtifacts(
- FakeJavaInfo javaInfo, SkylarkList<?> compileTimeJavaDependencyArtifacts) {
+ FakeJavaInfo javaInfo, Sequence<?> compileTimeJavaDependencyArtifacts) {
return new FakeJavaInfo();
}
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaInfo.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaInfo.java
index 2b5df40..70f6f0e 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaInfo.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaInfo.java
@@ -22,7 +22,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.java.JavaRuleOutputJarsProviderApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -52,7 +52,7 @@
}
@Override
- public SkylarkList<FileApi> getSourceJars() {
+ public Sequence<FileApi> getSourceJars() {
return null;
}
@@ -72,7 +72,7 @@
}
@Override
- public SkylarkList<FileApi> getRuntimeOutputJars() {
+ public Sequence<FileApi> getRuntimeOutputJars() {
return null;
}
@@ -120,9 +120,9 @@
Object compileJarApi,
Object sourceJarApi,
Boolean neverlink,
- SkylarkList<?> deps,
- SkylarkList<?> runtimeDeps,
- SkylarkList<?> exports,
+ Sequence<?> deps,
+ Sequence<?> runtimeDeps,
+ Sequence<?> exports,
Object jdepsApi,
Location loc,
StarlarkThread thread)
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaToolchainSkylarkApiProviderApi.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaToolchainSkylarkApiProviderApi.java
index cf65129..3f841f6 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaToolchainSkylarkApiProviderApi.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/java/FakeJavaToolchainSkylarkApiProviderApi.java
@@ -19,7 +19,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.java.JavaToolchainSkylarkApiProviderApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.EvalException;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
final class FakeJavaToolchainSkylarkApiProviderApi implements JavaToolchainSkylarkApiProviderApi {
@@ -50,7 +50,7 @@
}
@Override
- public SkylarkList<String> getSkylarkJvmOptions() {
+ public Sequence<String> getSkylarkJvmOptions() {
return null;
}
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/repository/FakeRepositoryModule.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/repository/FakeRepositoryModule.java
index 0757adc..4c28900 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/repository/FakeRepositoryModule.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/repository/FakeRepositoryModule.java
@@ -22,8 +22,8 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.FuncallExpression;
import com.google.devtools.build.lib.syntax.FunctionSignature;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkThread;
import com.google.devtools.build.skydoc.fakebuildapi.FakeDescriptor;
@@ -54,7 +54,7 @@
BaseFunction implementation,
Object attrs,
Boolean local,
- SkylarkList<?> environ, // <String> expected
+ Sequence<?> environ, // <String> expected
Boolean configure,
String doc,
FuncallExpression ast,
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/test/FakeCoverageCommon.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/test/FakeCoverageCommon.java
index a1cb8bd..e09fd19 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/test/FakeCoverageCommon.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/test/FakeCoverageCommon.java
@@ -19,7 +19,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.test.CoverageCommonApi;
import com.google.devtools.build.lib.skylarkbuildapi.test.InstrumentedFilesInfoApi;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
/** Fake implementation of {@link CoverageCommonApi}. */
public class FakeCoverageCommon implements CoverageCommonApi<SkylarkRuleContextApi> {
@@ -27,8 +27,8 @@
@Override
public InstrumentedFilesInfoApi instrumentedFilesInfo(
SkylarkRuleContextApi skylarkRuleContext,
- SkylarkList<?> sourceAttributes,
- SkylarkList<?> dependencyAttributes,
+ Sequence<?> sourceAttributes,
+ Sequence<?> dependencyAttributes,
Object extensions,
Location location) {
return null;
diff --git a/src/test/java/com/google/devtools/build/docgen/SkylarkDocumentationTest.java b/src/test/java/com/google/devtools/build/docgen/SkylarkDocumentationTest.java
index 4341cd0..d943a5e 100644
--- a/src/test/java/com/google/devtools/build/docgen/SkylarkDocumentationTest.java
+++ b/src/test/java/com/google/devtools/build/docgen/SkylarkDocumentationTest.java
@@ -27,8 +27,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkGlobalLibrary;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.StarlarkList;
import com.google.devtools.build.lib.syntax.Tuple;
@@ -142,17 +142,16 @@
@SkylarkModule(name = "MockClassF", doc = "MockClassF")
private static class MockClassF implements SkylarkValue {
@SkylarkCallable(
- name = "test",
- doc = "MockClassF#test",
- parameters = {
- @Param(name = "a", named = false, positional = true),
- @Param(name = "b", named = true, positional = true),
- @Param(name = "c", named = true, positional = false),
- @Param(name = "d", named = true, positional = false, defaultValue = "1"),
- },
- extraPositionals = @Param(name = "myArgs")
- )
- public Integer test(int a, int b, int c, int d, SkylarkList<?> args) {
+ name = "test",
+ doc = "MockClassF#test",
+ parameters = {
+ @Param(name = "a", named = false, positional = true),
+ @Param(name = "b", named = true, positional = true),
+ @Param(name = "c", named = true, positional = false),
+ @Param(name = "d", named = true, positional = false, defaultValue = "1"),
+ },
+ extraPositionals = @Param(name = "myArgs"))
+ public Integer test(int a, int b, int c, int d, Sequence<?> args) {
return 0;
}
}
@@ -180,18 +179,17 @@
@SkylarkModule(name = "MockClassH", doc = "MockClassH")
private static class MockClassH implements SkylarkValue {
@SkylarkCallable(
- name = "test",
- doc = "MockClassH#test",
- parameters = {
- @Param(name = "a", named = false, positional = true),
- @Param(name = "b", named = true, positional = true),
- @Param(name = "c", named = true, positional = false),
- @Param(name = "d", named = true, positional = false, defaultValue = "1"),
- },
- extraPositionals = @Param(name = "myArgs"),
- extraKeywords = @Param(name = "myKwargs")
- )
- public Integer test(int a, int b, int c, int d, SkylarkList<?> args, SkylarkDict<?, ?> kwargs) {
+ name = "test",
+ doc = "MockClassH#test",
+ parameters = {
+ @Param(name = "a", named = false, positional = true),
+ @Param(name = "b", named = true, positional = true),
+ @Param(name = "c", named = true, positional = false),
+ @Param(name = "d", named = true, positional = false, defaultValue = "1"),
+ },
+ extraPositionals = @Param(name = "myArgs"),
+ extraKeywords = @Param(name = "myKwargs"))
+ public Integer test(int a, int b, int c, int d, Sequence<?> args, SkylarkDict<?, ?> kwargs) {
return 0;
}
}
@@ -208,15 +206,14 @@
name = "MockGlobalCallable",
doc = "GlobalCallable documentation",
parameters = {
- @Param(name = "a", named = false, positional = true),
- @Param(name = "b", named = true, positional = true),
- @Param(name = "c", named = true, positional = false),
- @Param(name = "d", named = true, positional = false, defaultValue = "1"),
+ @Param(name = "a", named = false, positional = true),
+ @Param(name = "b", named = true, positional = true),
+ @Param(name = "c", named = true, positional = false),
+ @Param(name = "d", named = true, positional = false, defaultValue = "1"),
},
extraPositionals = @Param(name = "myArgs"),
- extraKeywords = @Param(name = "myKwargs")
- )
- public Integer test(int a, int b, int c, int d, SkylarkList<?> args, SkylarkDict<?, ?> kwargs) {
+ extraKeywords = @Param(name = "myKwargs"))
+ public Integer test(int a, int b, int c, int d, Sequence<?> args, SkylarkDict<?, ?> kwargs) {
return 0;
}
}
@@ -248,7 +245,7 @@
}
@SkylarkCallable(name = "skylark", doc = "skylark")
- public SkylarkList<Integer> getSkylarkList() {
+ public Sequence<Integer> getSkylarkList() {
return null;
}
}
diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/SkylarkCcCommonTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/SkylarkCcCommonTest.java
index fa2cddc..eb72b8a 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/cpp/SkylarkCcCommonTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/SkylarkCcCommonTest.java
@@ -52,8 +52,8 @@
import com.google.devtools.build.lib.rules.cpp.CcToolchainVariables.StringValueParser;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkList;
@@ -271,8 +271,8 @@
ConfiguredTarget r = getConfiguredTarget("//a:r");
@SuppressWarnings("unchecked")
- SkylarkList<String> requirements =
- (SkylarkList<String>) getMyInfoFromTarget(r).getValue("requirements");
+ Sequence<String> requirements =
+ (Sequence<String>) getMyInfoFromTarget(r).getValue("requirements");
assertThat(requirements).containsExactly("requires-yolo");
}
@@ -386,8 +386,8 @@
ConfiguredTarget r = getConfiguredTarget("//a:r");
@SuppressWarnings("unchecked")
- SkylarkList<String> commandLine =
- (SkylarkList<String>) getMyInfoFromTarget(r).getValue("command_line");
+ Sequence<String> commandLine =
+ (Sequence<String>) getMyInfoFromTarget(r).getValue("command_line");
RuleContext ruleContext = getRuleContext(r);
CcToolchainProvider toolchain =
CppHelper.getToolchain(
@@ -987,7 +987,7 @@
.doesNotContain("-i_dont_want_to_see_this_on_archiver_command_line");
}
- private SkylarkList<String> commandLineForVariables(String actionName, String... variables)
+ private Sequence<String> commandLineForVariables(String actionName, String... variables)
throws Exception {
return commandLineForVariables(actionName, 0, variables);
}
@@ -995,7 +995,7 @@
// This method is only there to change the package to fix multiple runs of this method in a single
// test.
// TODO(b/109917616): Remove pkgSuffix argument when bzl files are not cached within single test
- private SkylarkList<String> commandLineForVariables(
+ private Sequence<String> commandLineForVariables(
String actionName, int pkgSuffix, String... variables) throws Exception {
scratch.file(
"a" + pkgSuffix + "/BUILD",
@@ -1033,8 +1033,7 @@
return null;
}
@SuppressWarnings("unchecked")
- SkylarkList<String> result =
- (SkylarkList<String>) getMyInfoFromTarget(r).getValue("command_line");
+ Sequence<String> result = (Sequence<String>) getMyInfoFromTarget(r).getValue("command_line");
return result;
}
@@ -1336,8 +1335,8 @@
StructImpl info = ((StructImpl) getMyInfoFromTarget(a).getValue("info"));
@SuppressWarnings("unchecked")
- SkylarkList<String> userLinkFlags =
- (SkylarkList<String>) info.getValue("user_link_flags", SkylarkList.class);
+ Sequence<String> userLinkFlags =
+ (Sequence<String>) info.getValue("user_link_flags", Sequence.class);
assertThat(userLinkFlags.getImmutableList())
.containsExactly("-la", "-lc2", "-DEP2_LINKOPT", "-lc1", "-lc2", "-DEP1_LINKOPT");
SkylarkNestedSet additionalInputs = info.getValue("additional_inputs", SkylarkNestedSet.class);
@@ -5440,8 +5439,8 @@
ConfiguredTarget target = getConfiguredTarget("//foo:skylark_lib");
assertThat(target).isNotNull();
@SuppressWarnings("unchecked")
- SkylarkList<LibraryToLink> libraries =
- (SkylarkList<LibraryToLink>) getMyInfoFromTarget(target).getValue("libraries");
+ Sequence<LibraryToLink> libraries =
+ (Sequence<LibraryToLink>) getMyInfoFromTarget(target).getValue("libraries");
assertThat(
libraries.stream()
.map(x -> x.getResolvedSymlinkDynamicLibrary().getFilename())
diff --git a/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java b/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
index f370e48..087a09b 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
@@ -32,7 +32,7 @@
import com.google.devtools.build.lib.packages.SkylarkProvider.SkylarkKey;
import com.google.devtools.build.lib.packages.StructImpl;
import com.google.devtools.build.lib.rules.java.JavaRuleOutputJarsProvider.OutputJar;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.util.FileType;
@@ -322,7 +322,7 @@
SkylarkNestedSet compileJars = ((SkylarkNestedSet) info.getValue("compile_jars"));
SkylarkNestedSet fullCompileJars = ((SkylarkNestedSet) info.getValue("full_compile_jars"));
@SuppressWarnings("unchecked")
- SkylarkList<Artifact> sourceJars = ((SkylarkList<Artifact>) info.getValue("source_jars"));
+ Sequence<Artifact> sourceJars = ((Sequence<Artifact>) info.getValue("source_jars"));
JavaRuleOutputJarsProvider outputs = ((JavaRuleOutputJarsProvider) info.getValue("outputs"));
assertThat(artifactFilesNames(transitiveRuntimeJars.toCollection(Artifact.class)))
@@ -593,7 +593,7 @@
ConfiguredTarget configuredTarget = getConfiguredTarget("//java/test:custom");
JavaInfo info = configuredTarget.get(JavaInfo.PROVIDER);
- SkylarkList<Artifact> sourceJars = info.getSourceJars();
+ Sequence<Artifact> sourceJars = info.getSourceJars();
NestedSet<Artifact> transitiveSourceJars =
info.getTransitiveSourceJars().getSet(Artifact.class);
assertThat(artifactFilesNames(sourceJars)).containsExactly("libcustom-src.jar");
@@ -665,7 +665,7 @@
ConfiguredTarget configuredTarget = getConfiguredTarget("//java/test:custom");
JavaInfo info = configuredTarget.get(JavaInfo.PROVIDER);
- SkylarkList<Artifact> sourceJars = info.getSourceJars();
+ Sequence<Artifact> sourceJars = info.getSourceJars();
NestedSet<Artifact> transitiveSourceJars =
info.getTransitiveSourceJars().getSet(Artifact.class);
assertThat(artifactFilesNames(sourceJars))
@@ -717,7 +717,7 @@
ConfiguredTarget configuredTarget = getConfiguredTarget("//java/test:custom");
JavaInfo info = configuredTarget.get(JavaInfo.PROVIDER);
- SkylarkList<Artifact> sourceJars = info.getSourceJars();
+ Sequence<Artifact> sourceJars = info.getSourceJars();
assertThat(artifactFilesNames(sourceJars)).containsExactly("libcustom-src.jar");
JavaRuleOutputJarsProvider outputJars = info.getOutputJars();
assertThat(outputJars.getOutputJars()).hasSize(1);
@@ -771,7 +771,7 @@
ConfiguredTarget configuredTarget = getConfiguredTarget("//java/test:custom");
JavaInfo info = configuredTarget.get(JavaInfo.PROVIDER);
- SkylarkList<Artifact> sourceJars = info.getSourceJars();
+ Sequence<Artifact> sourceJars = info.getSourceJars();
assertThat(artifactFilesNames(sourceJars)).containsExactly("libcustom-src.jar");
JavaRuleOutputJarsProvider outputJars = info.getOutputJars();
assertThat(outputJars.getOutputJars()).hasSize(1);
@@ -827,7 +827,7 @@
ConfiguredTarget configuredTarget = getConfiguredTarget("//java/test:custom");
JavaInfo info = configuredTarget.get(JavaInfo.PROVIDER);
- SkylarkList<Artifact> sourceJars = info.getSourceJars();
+ Sequence<Artifact> sourceJars = info.getSourceJars();
assertThat(artifactFilesNames(sourceJars)).containsExactly("libcustom-mysrc.jar");
JavaRuleOutputJarsProvider outputJars = info.getOutputJars();
assertThat(outputJars.getOutputJars()).hasSize(1);
@@ -1349,7 +1349,7 @@
new SkylarkKey(
Label.parseAbsolute("//foo:extension.bzl", ImmutableMap.of()), "result"));
@SuppressWarnings("unchecked")
- SkylarkList<Artifact> sourceJars = (SkylarkList<Artifact>) (info.getValue("source_jars"));
+ Sequence<Artifact> sourceJars = (Sequence<Artifact>) (info.getValue("source_jars"));
assertThat(prettyArtifactNames(sourceJars)).containsExactly("foo/libmy_java_lib_a-src.jar");
assertThat(prettyArtifactNames(sourceJars)).doesNotContain("foo/libmy_java_lib_b-src.jar");
@@ -2165,8 +2165,7 @@
ConfiguredTarget r = getConfiguredTarget("//a:r");
@SuppressWarnings("unchecked") // Use an extra variable in order to suppress the warning.
- SkylarkList<String> javacopts =
- (SkylarkList<String>) getMyInfoFromTarget(r).getValue("javac_opts");
+ Sequence<String> javacopts = (Sequence<String>) getMyInfoFromTarget(r).getValue("javac_opts");
assertThat(String.join(" ", javacopts)).contains("-source 6 -target 6");
}
@@ -2192,8 +2191,7 @@
ConfiguredTarget r = getConfiguredTarget("//a:r");
@SuppressWarnings("unchecked") // Use an extra variable in order to suppress the warning.
- SkylarkList<String> javacopts =
- (SkylarkList<String>) getMyInfoFromTarget(r).getValue("javac_opts");
+ Sequence<String> javacopts = (Sequence<String>) getMyInfoFromTarget(r).getValue("javac_opts");
assertThat(String.join(" ", javacopts)).contains("-source 6 -target 6");
}
diff --git a/src/test/java/com/google/devtools/build/lib/rules/platform/ConstraintCollectionApiTest.java b/src/test/java/com/google/devtools/build/lib/rules/platform/ConstraintCollectionApiTest.java
index de693ed..18f7309 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/platform/ConstraintCollectionApiTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/platform/ConstraintCollectionApiTest.java
@@ -25,7 +25,7 @@
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.packages.SkylarkProvider.SkylarkKey;
import com.google.devtools.build.lib.packages.StructImpl;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import java.util.Collection;
import java.util.Set;
import java.util.stream.Collectors;
@@ -168,8 +168,8 @@
.isEqualTo(Label.parseAbsoluteUnchecked("//foo:value1"));
@SuppressWarnings("unchecked")
- SkylarkList<ConstraintSettingInfo> usedConstraints =
- (SkylarkList<ConstraintSettingInfo>) info.getValue("used_constraints");
+ Sequence<ConstraintSettingInfo> usedConstraints =
+ (Sequence<ConstraintSettingInfo>) info.getValue("used_constraints");
assertThat(usedConstraints).isNotNull();
assertThat(usedConstraints)
.containsExactly(
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkActionProviderTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkActionProviderTest.java
index befdd40..ddff11d 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkActionProviderTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkActionProviderTest.java
@@ -26,8 +26,8 @@
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.packages.SkylarkProvider.SkylarkKey;
import com.google.devtools.build.lib.packages.StructImpl;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import java.util.List;
import java.util.stream.Collectors;
import org.junit.Test;
@@ -66,8 +66,8 @@
StructImpl fooProvider = (StructImpl) configuredAspect.get(fooKey);
assertThat(fooProvider.getValue("actions")).isNotNull();
@SuppressWarnings("unchecked")
- SkylarkList<ActionAnalysisMetadata> actions =
- (SkylarkList<ActionAnalysisMetadata>) fooProvider.getValue("actions");
+ Sequence<ActionAnalysisMetadata> actions =
+ (Sequence<ActionAnalysisMetadata>) fooProvider.getValue("actions");
assertThat(actions).isNotEmpty();
ActionAnalysisMetadata action = actions.get(0);
@@ -121,37 +121,34 @@
StructImpl fooProvider = (StructImpl) configuredAspect.get(fooKey);
assertThat(fooProvider.getValue("actions")).isNotNull();
- SkylarkList<ActionAnalysisMetadata> actions =
- (SkylarkList<ActionAnalysisMetadata>) fooProvider.getValue("actions");
+ Sequence<ActionAnalysisMetadata> actions =
+ (Sequence<ActionAnalysisMetadata>) fooProvider.getValue("actions");
assertThat(actions).hasSize(2);
- SkylarkList<String> mnemonics =
- (SkylarkList<String>) fooProvider.getValue("mnemonics");
+ Sequence<String> mnemonics = (Sequence<String>) fooProvider.getValue("mnemonics");
assertThat(mnemonics).containsExactly("MyAction0", "MyAction1");
- SkylarkList<SkylarkDict<String, String>> envs =
- (SkylarkList<SkylarkDict<String, String>>) fooProvider.getValue("envs");
+ Sequence<SkylarkDict<String, String>> envs =
+ (Sequence<SkylarkDict<String, String>>) fooProvider.getValue("envs");
assertThat(envs).containsExactly(
SkylarkDict.of(null, "foo", "bar", "pet", "puppy"),
SkylarkDict.of(null, "pet", "bunny"));
- SkylarkList<SkylarkList<Artifact>> inputs =
- (SkylarkList<SkylarkList<Artifact>>) fooProvider.getValue("inputs");
+ Sequence<Sequence<Artifact>> inputs =
+ (Sequence<Sequence<Artifact>>) fooProvider.getValue("inputs");
assertThat(flattenArtifactNames(inputs)).containsExactly("executable");
- SkylarkList<SkylarkList<Artifact>> outputs =
- (SkylarkList<SkylarkList<Artifact>>) fooProvider.getValue("outputs");
+ Sequence<Sequence<Artifact>> outputs =
+ (Sequence<Sequence<Artifact>>) fooProvider.getValue("outputs");
assertThat(flattenArtifactNames(outputs)).containsExactly("myfile0", "executable", "myfile1");
- SkylarkList<SkylarkList<String>> argv =
- (SkylarkList<SkylarkList<String>>) fooProvider.getValue("argv");
+ Sequence<Sequence<String>> argv = (Sequence<Sequence<String>>) fooProvider.getValue("argv");
assertThat(argv.get(0)).hasSize(1);
assertThat(argv.get(0).get(0)).endsWith("executable");
assertThat(argv.get(1)).contains("fakecmd");
}
- private static List<String> flattenArtifactNames(
- SkylarkList<SkylarkList<Artifact>> artifactLists) {
+ private static List<String> flattenArtifactNames(Sequence<Sequence<Artifact>> artifactLists) {
return artifactLists.stream()
.flatMap(artifacts -> artifacts.stream())
.map(artifact -> artifact.getFilename())
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkDefinedAspectsTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkDefinedAspectsTest.java
index 379fbce..5314287 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkDefinedAspectsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkDefinedAspectsTest.java
@@ -45,7 +45,7 @@
import com.google.devtools.build.lib.rules.java.JavaConfiguration;
import com.google.devtools.build.lib.rules.objc.ObjcProtoProvider;
import com.google.devtools.build.lib.skyframe.AspectValue;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.vfs.FileSystemUtils;
import java.util.Arrays;
@@ -1945,7 +1945,7 @@
"r2(name = 'r2', dep = ':r1')");
AnalysisResult analysisResult = update("//test:r2");
ConfiguredTarget target = Iterables.getOnlyElement(analysisResult.getTargetsToBuild());
- SkylarkList<?> result = (SkylarkList) target.get("result");
+ Sequence<?> result = (Sequence) target.get("result");
// "yes" means that aspect a2 sees a1's providers.
assertThat(result)
@@ -2009,7 +2009,7 @@
"rcollect(name = 'rcollect', deps = [':r1', ':r2'])");
AnalysisResult analysisResult = update("//test:rcollect");
ConfiguredTarget target = Iterables.getOnlyElement(analysisResult.getTargetsToBuild());
- SkylarkList<?> result = (SkylarkList) target.get("result");
+ Sequence<?> result = (Sequence) target.get("result");
assertThat(result)
.containsExactly(
"//test:r0[\"//test:aspect.bzl%a1\", \"//test:aspect.bzl%a3\"]=a1p",
@@ -2059,7 +2059,7 @@
"r2(name = 'r2', dep = ':r1')");
AnalysisResult analysisResult = update("//test:r2");
ConfiguredTarget target = Iterables.getOnlyElement(analysisResult.getTargetsToBuild());
- SkylarkList<?> result = (SkylarkList) target.get("result");
+ Sequence<?> result = (Sequence) target.get("result");
// "yes" means that aspect a2 sees a1's providers.
assertThat(result)
.containsExactly(
@@ -2102,7 +2102,7 @@
"r2(name = 'r2', dep = ':r1')");
AnalysisResult analysisResult = update("//test:r2");
ConfiguredTarget target = Iterables.getOnlyElement(analysisResult.getTargetsToBuild());
- SkylarkList<?> result = (SkylarkList<?>) target.get("result");
+ Sequence<?> result = (Sequence<?>) target.get("result");
// "yes" means that aspect a2 sees a1's providers.
assertThat(result)
@@ -2141,7 +2141,7 @@
"r(name = 'r2', dep = ':r1')");
AnalysisResult analysisResult = update("//test:r2");
ConfiguredTarget target = Iterables.getOnlyElement(analysisResult.getTargetsToBuild());
- SkylarkList<?> result = (SkylarkList<?>) target.get("result");
+ Sequence<?> result = (Sequence<?>) target.get("result");
assertThat(result)
.containsExactly(
@@ -2343,7 +2343,7 @@
SkylarkKey p3 =
new SkylarkKey(Label.parseAbsolute("//test:aspect.bzl", ImmutableMap.of()), "p3");
StructImpl p3Provider = (StructImpl) configuredAspect.get(p3);
- assertThat((SkylarkList<?>) p3Provider.getValue("value"))
+ assertThat((Sequence<?>) p3Provider.getValue("value"))
.containsExactly(
"//test:r0_1=True",
"//test:r0_2=True",
@@ -2406,7 +2406,7 @@
SkylarkKey pCollector =
new SkylarkKey(Label.parseAbsolute("//test:aspect.bzl", ImmutableMap.of()), "PCollector");
StructImpl pCollectorProvider = (StructImpl) configuredTarget.get(pCollector);
- assertThat((SkylarkList<?>) pCollectorProvider.getValue("result"))
+ assertThat((Sequence<?>) pCollectorProvider.getValue("result"))
.containsExactly("//test:r1", "//test:r0", "//test:r0+PAspect");
}
@@ -2686,7 +2686,7 @@
"r2(name = 'r2', dep = ':r1')");
AnalysisResult analysisResult = update("//test:r2");
ConfiguredTarget target = Iterables.getOnlyElement(analysisResult.getTargetsToBuild());
- SkylarkList<?> result = (SkylarkList<?>) target.get("result");
+ Sequence<?> result = (Sequence<?>) target.get("result");
// We should see both the action from the 'r0' rule, and the action from the 'a1' aspect
assertThat(result).hasSize(2);
@@ -2890,12 +2890,12 @@
StructImpl rootInfoWithFiles = (StructImpl) targetWithFiles.get(rootInfoKey);
// With apply_to_generating_rules=True, the aspect should have traversed :beta_output and
// applied to both :beta and :charlie.
- assertThat(rootInfoWithFiles.getValue("from_aspect", SkylarkList.class))
+ assertThat(rootInfoWithFiles.getValue("from_aspect", Sequence.class))
.containsExactly(
Label.parseAbsolute("//test:charlie", ImmutableMap.of()),
Label.parseAbsolute("//test:beta", ImmutableMap.of()),
Label.parseAbsolute("//test:alpha", ImmutableMap.of()));
- assertThat(rootInfoWithFiles.getValue("non_aspect", SkylarkList.class))
+ assertThat(rootInfoWithFiles.getValue("non_aspect", Sequence.class))
.containsExactly(Label.parseAbsolute("//test:alpha", ImmutableMap.of()));
AnalysisResult analysisResultNoFiles = update("//test:test_no_files");
@@ -2904,9 +2904,9 @@
StructImpl rootInfoNoFiles = (StructImpl) targetNoFiles.get(rootInfoKey);
// With apply_to_generating_rules=False, the aspect should have only accessed :alpha, as it
// must have stopped before :beta_output.
- assertThat(rootInfoNoFiles.getValue("from_aspect", SkylarkList.class))
+ assertThat(rootInfoNoFiles.getValue("from_aspect", Sequence.class))
.containsExactly(Label.parseAbsolute("//test:alpha", ImmutableMap.of()));
- assertThat(rootInfoWithFiles.getValue("non_aspect", SkylarkList.class))
+ assertThat(rootInfoWithFiles.getValue("non_aspect", Sequence.class))
.containsExactly(Label.parseAbsolute("//test:alpha", ImmutableMap.of()));
}
@@ -3004,13 +3004,13 @@
StructImpl rootInfo = (StructImpl) target.get(rootInfoKey);
StructImpl depInfo = (StructImpl) target.get(depInfoKey);
- assertThat(rootInfo.getValue("both_labels", SkylarkList.class))
+ assertThat(rootInfo.getValue("both_labels", Sequence.class))
.containsExactly(
Label.parseAbsolute("//test:alpha", ImmutableMap.of()),
Label.parseAbsolute("//test:beta_output", ImmutableMap.of()),
Label.parseAbsolute("//test:charlie", ImmutableMap.of()));
- assertThat(rootInfo.getValue("root_only_labels", SkylarkList.class)).isEmpty();
- assertThat(depInfo.getValue("labels", SkylarkList.class))
+ assertThat(rootInfo.getValue("root_only_labels", Sequence.class)).isEmpty();
+ assertThat(depInfo.getValue("labels", Sequence.class))
.containsExactly(
Label.parseAbsolute("//test:alpha", ImmutableMap.of()),
Label.parseAbsolute("//test:beta", ImmutableMap.of()),
@@ -3032,10 +3032,10 @@
StructImpl rootInfo = (StructImpl) target.get(rootInfoKey);
StructImpl depInfo = (StructImpl) target.get(depInfoKey);
- assertThat(rootInfo.getValue("both_labels", SkylarkList.class))
+ assertThat(rootInfo.getValue("both_labels", Sequence.class))
.containsExactly(Label.parseAbsolute("//test:alpha", ImmutableMap.of()));
- assertThat(rootInfo.getValue("root_only_labels", SkylarkList.class)).isEmpty();
- assertThat(depInfo.getValue("labels", SkylarkList.class))
+ assertThat(rootInfo.getValue("root_only_labels", Sequence.class)).isEmpty();
+ assertThat(depInfo.getValue("labels", Sequence.class))
.containsExactly(Label.parseAbsolute("//test:alpha", ImmutableMap.of()));
}
@@ -3054,13 +3054,13 @@
StructImpl rootInfo = (StructImpl) target.get(rootInfoKey);
StructImpl depInfo = (StructImpl) target.get(depInfoKey);
- assertThat(rootInfo.getValue("both_labels", SkylarkList.class))
+ assertThat(rootInfo.getValue("both_labels", Sequence.class))
.containsExactly(Label.parseAbsolute("//test:alpha", ImmutableMap.of()));
- assertThat(rootInfo.getValue("root_only_labels", SkylarkList.class))
+ assertThat(rootInfo.getValue("root_only_labels", Sequence.class))
.containsExactly(
Label.parseAbsolute("//test:beta_output", ImmutableMap.of()),
Label.parseAbsolute("//test:charlie", ImmutableMap.of()));
- assertThat(depInfo.getValue("labels", SkylarkList.class))
+ assertThat(depInfo.getValue("labels", Sequence.class))
.containsExactly(Label.parseAbsolute("//test:alpha", ImmutableMap.of()));
}
@@ -3079,10 +3079,10 @@
StructImpl rootInfo = (StructImpl) target.get(rootInfoKey);
StructImpl depInfo = (StructImpl) target.get(depInfoKey);
- assertThat(rootInfo.getValue("both_labels", SkylarkList.class))
+ assertThat(rootInfo.getValue("both_labels", Sequence.class))
.containsExactly(Label.parseAbsolute("//test:alpha", ImmutableMap.of()));
- assertThat(rootInfo.getValue("root_only_labels", SkylarkList.class)).isEmpty();
- assertThat(depInfo.getValue("labels", SkylarkList.class))
+ assertThat(rootInfo.getValue("root_only_labels", Sequence.class)).isEmpty();
+ assertThat(depInfo.getValue("labels", Sequence.class))
.containsExactly(
Label.parseAbsolute("//test:alpha", ImmutableMap.of()),
Label.parseAbsolute("//test:beta", ImmutableMap.of()),
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
index 820eccc..433b989 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
@@ -55,7 +55,7 @@
import com.google.devtools.build.lib.skyframe.PackageFunction;
import com.google.devtools.build.lib.skyframe.SkyFunctions;
import com.google.devtools.build.lib.skyframe.SkylarkImportLookupFunction;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkList;
@@ -294,7 +294,7 @@
.containsExactlyElementsIn(hiddenTopLevelArtifacts);
assertThat(myInfo.getValue("has_key1")).isEqualTo(Boolean.TRUE);
assertThat(myInfo.getValue("has_key2")).isEqualTo(Boolean.FALSE);
- assertThat((SkylarkList) myInfo.getValue("all_keys"))
+ assertThat((Sequence) myInfo.getValue("all_keys"))
.containsExactly(
OutputGroupInfo.HIDDEN_TOP_LEVEL,
OutputGroupInfo.COMPILATION_PREREQUISITES,
@@ -2225,8 +2225,8 @@
StructImpl outerDepInfo = (StructImpl) outerTarget.get(myDepKey);
StructImpl innerInfo = (StructImpl) outerDepInfo.getValue("info");
- assertThat((SkylarkList) outerInfo.getValue("copts")).containsExactly("yeehaw");
- assertThat((SkylarkList) innerInfo.getValue("copts")).containsExactly("cowabunga");
+ assertThat((Sequence) outerInfo.getValue("copts")).containsExactly("yeehaw");
+ assertThat((Sequence) innerInfo.getValue("copts")).containsExactly("cowabunga");
}
@Test
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleContextTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleContextTest.java
index 423f92e..fe8fc13 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleContextTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleContextTest.java
@@ -47,8 +47,8 @@
import com.google.devtools.build.lib.rules.java.JavaSourceJarsProvider;
import com.google.devtools.build.lib.rules.python.PyProviderUtils;
import com.google.devtools.build.lib.skylark.util.SkylarkTestCase;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkList;
@@ -458,8 +458,8 @@
}
private void assertArtifactList(Object result, List<String> artifacts) {
- assertThat(result).isInstanceOf(SkylarkList.class);
- SkylarkList<?> resultList = (SkylarkList) result;
+ assertThat(result).isInstanceOf(Sequence.class);
+ Sequence<?> resultList = (Sequence) result;
assertThat(resultList).hasSize(artifacts.size());
int i = 0;
for (String artifact : artifacts) {
@@ -473,7 +473,7 @@
setRuleContext(ruleContext);
Object result = eval("ruleContext.attr.srcs");
// Check for a known provider
- TransitiveInfoCollection tic1 = (TransitiveInfoCollection) ((SkylarkList) result).get(0);
+ TransitiveInfoCollection tic1 = (TransitiveInfoCollection) ((Sequence) result).get(0);
assertThat(JavaInfo.getProvider(JavaSourceJarsProvider.class, tic1)).isNotNull();
// Check an unimplemented provider too
assertThat(PyProviderUtils.hasLegacyProvider(tic1)).isFalse();
@@ -494,7 +494,7 @@
SkylarkRuleContext ruleContext = createRuleContext("//foo:foo");
setRuleContext(ruleContext);
Object result = eval("ruleContext.attr.outs");
- assertThat(result).isInstanceOf(SkylarkList.class);
+ assertThat(result).isInstanceOf(Sequence.class);
}
@Test
@@ -646,7 +646,7 @@
SkylarkRuleContext ruleContext = createRuleContext("//foo:foo");
setRuleContext(ruleContext);
Object result = eval("ruleContext.attr.outs");
- assertThat(((SkylarkList) result)).hasSize(1);
+ assertThat(((Sequence) result)).hasSize(1);
}
@Test
@@ -654,7 +654,7 @@
SkylarkRuleContext ruleContext = createRuleContext("//foo:foo");
setRuleContext(ruleContext);
Object result = eval("ruleContext.attr.outs");
- assertThat(((SkylarkList) result)).hasSize(1);
+ assertThat(((Sequence) result)).hasSize(1);
}
@Test
@@ -865,14 +865,14 @@
public void testFeatures() throws Exception {
setRuleContext(createRuleContext("//foo:cc_with_features"));
Object result = eval("ruleContext.features");
- assertThat((SkylarkList) result).containsExactly("cc_include_scanning", "f1", "f2");
+ assertThat((Sequence) result).containsExactly("cc_include_scanning", "f1", "f2");
}
@Test
public void testDisabledFeatures() throws Exception {
setRuleContext(createRuleContext("//foo:cc_with_features"));
Object result = eval("ruleContext.disabled_features");
- assertThat((SkylarkList) result).containsExactly("f3");
+ assertThat((Sequence) result).containsExactly("f3");
}
@Test
@@ -1571,19 +1571,19 @@
setRuleContext(createRuleContext("//test:foo"));
Object filenames =
eval("[f.short_path for f in ruleContext.attr.dep.default_runfiles.files.to_list()]");
- assertThat(filenames).isInstanceOf(SkylarkList.class);
- SkylarkList<?> filenamesList = (SkylarkList) filenames;
+ assertThat(filenames).isInstanceOf(Sequence.class);
+ Sequence<?> filenamesList = (Sequence) filenames;
assertThat(filenamesList).containsAtLeast("test/lib.py", "test/lib2.py");
Object emptyFilenames = eval("ruleContext.attr.dep.default_runfiles.empty_filenames.to_list()");
- assertThat(emptyFilenames).isInstanceOf(SkylarkList.class);
- SkylarkList<?> emptyFilenamesList = (SkylarkList) emptyFilenames;
+ assertThat(emptyFilenames).isInstanceOf(Sequence.class);
+ Sequence<?> emptyFilenamesList = (Sequence) emptyFilenames;
assertThat(emptyFilenamesList).containsExactly("test/__init__.py");
setRuleContext(createRuleContext("//test:foo_with_init"));
Object noEmptyFilenames =
eval("ruleContext.attr.dep.default_runfiles.empty_filenames.to_list()");
- assertThat(noEmptyFilenames).isInstanceOf(SkylarkList.class);
- SkylarkList<?> noEmptyFilenamesList = (SkylarkList) noEmptyFilenames;
+ assertThat(noEmptyFilenames).isInstanceOf(Sequence.class);
+ Sequence<?> noEmptyFilenamesList = (Sequence) noEmptyFilenames;
assertThat(noEmptyFilenamesList).isEmpty();
}
@@ -1622,15 +1622,15 @@
setRuleContext(createRuleContext("//test:test_with_symlink"));
Object symlinkPaths =
eval("[s.path for s in ruleContext.attr.data[0].data_runfiles.symlinks.to_list()]");
- assertThat(symlinkPaths).isInstanceOf(SkylarkList.class);
- SkylarkList<?> symlinkPathsList = (SkylarkList) symlinkPaths;
+ assertThat(symlinkPaths).isInstanceOf(Sequence.class);
+ Sequence<?> symlinkPathsList = (Sequence) symlinkPaths;
assertThat(symlinkPathsList).containsExactly("symlink_test/a.py").inOrder();
Object symlinkFilenames =
eval(
"[s.target_file.short_path for s in"
+ " ruleContext.attr.data[0].data_runfiles.symlinks.to_list()]");
- assertThat(symlinkFilenames).isInstanceOf(SkylarkList.class);
- SkylarkList<?> symlinkFilenamesList = (SkylarkList) symlinkFilenames;
+ assertThat(symlinkFilenames).isInstanceOf(Sequence.class);
+ Sequence<?> symlinkFilenamesList = (Sequence) symlinkFilenames;
assertThat(symlinkFilenamesList).containsExactly("test/a.py").inOrder();
}
@@ -1668,15 +1668,15 @@
setRuleContext(createRuleContext("//test:test_with_symlink"));
Object symlinkPaths =
eval("[s.path for s in ruleContext.attr.data[0].data_runfiles.symlinks.to_list()]");
- assertThat(symlinkPaths).isInstanceOf(SkylarkList.class);
- SkylarkList<?> symlinkPathsList = (SkylarkList) symlinkPaths;
+ assertThat(symlinkPaths).isInstanceOf(Sequence.class);
+ Sequence<?> symlinkPathsList = (Sequence) symlinkPaths;
assertThat(symlinkPathsList).containsExactly("symlink_test/a.py").inOrder();
Object symlinkFilenames =
eval(
"[s.target_file.short_path for s in"
+ " ruleContext.attr.data[0].data_runfiles.symlinks.to_list()]");
- assertThat(symlinkFilenames).isInstanceOf(SkylarkList.class);
- SkylarkList<?> symlinkFilenamesList = (SkylarkList) symlinkFilenames;
+ assertThat(symlinkFilenames).isInstanceOf(Sequence.class);
+ Sequence<?> symlinkFilenamesList = (Sequence) symlinkFilenames;
assertThat(symlinkFilenamesList).containsExactly("test/a.py").inOrder();
}
@@ -1715,15 +1715,15 @@
setRuleContext(createRuleContext("//test:test_with_root_symlink"));
Object rootSymlinkPaths =
eval("[s.path for s in ruleContext.attr.data[0].data_runfiles.root_symlinks.to_list()]");
- assertThat(rootSymlinkPaths).isInstanceOf(SkylarkList.class);
- SkylarkList<?> rootSymlinkPathsList = (SkylarkList) rootSymlinkPaths;
+ assertThat(rootSymlinkPaths).isInstanceOf(Sequence.class);
+ Sequence<?> rootSymlinkPathsList = (Sequence) rootSymlinkPaths;
assertThat(rootSymlinkPathsList).containsExactly("root_symlink_test/a.py").inOrder();
Object rootSymlinkFilenames =
eval(
"[s.target_file.short_path for s in"
+ " ruleContext.attr.data[0].data_runfiles.root_symlinks.to_list()]");
- assertThat(rootSymlinkFilenames).isInstanceOf(SkylarkList.class);
- SkylarkList<?> rootSymlinkFilenamesList = (SkylarkList) rootSymlinkFilenames;
+ assertThat(rootSymlinkFilenames).isInstanceOf(Sequence.class);
+ Sequence<?> rootSymlinkFilenamesList = (Sequence) rootSymlinkFilenames;
assertThat(rootSymlinkFilenamesList).containsExactly("test/a.py").inOrder();
}
@@ -1761,15 +1761,15 @@
setRuleContext(createRuleContext("//test:test_with_root_symlink"));
Object rootSymlinkPaths =
eval("[s.path for s in ruleContext.attr.data[0].data_runfiles.root_symlinks.to_list()]");
- assertThat(rootSymlinkPaths).isInstanceOf(SkylarkList.class);
- SkylarkList<?> rootSymlinkPathsList = (SkylarkList) rootSymlinkPaths;
+ assertThat(rootSymlinkPaths).isInstanceOf(Sequence.class);
+ Sequence<?> rootSymlinkPathsList = (Sequence) rootSymlinkPaths;
assertThat(rootSymlinkPathsList).containsExactly("root_symlink_test/a.py").inOrder();
Object rootSymlinkFilenames =
eval(
"[s.target_file.short_path for s in"
+ " ruleContext.attr.data[0].data_runfiles.root_symlinks.to_list()]");
- assertThat(rootSymlinkFilenames).isInstanceOf(SkylarkList.class);
- SkylarkList<?> rootSymlinkFilenamesList = (SkylarkList) rootSymlinkFilenames;
+ assertThat(rootSymlinkFilenames).isInstanceOf(Sequence.class);
+ Sequence<?> rootSymlinkFilenamesList = (Sequence) rootSymlinkFilenames;
assertThat(rootSymlinkFilenamesList).containsExactly("test/a.py").inOrder();
}
@@ -2445,7 +2445,7 @@
new SkylarkKey(Label.parseAbsolute("//a:a.bzl", ImmutableMap.of()), "key_provider");
SkylarkInfo keyInfo = (SkylarkInfo) a.get(key);
- SkylarkList<?> keys = (SkylarkList) keyInfo.getValue("keys");
+ Sequence<?> keys = (Sequence) keyInfo.getValue("keys");
assertThat(keys).containsExactly("c", "b", "a", "f", "e", "d").inOrder();
}
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleImplementationFunctionsTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleImplementationFunctionsTest.java
index 8e67867..e01f42a 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleImplementationFunctionsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleImplementationFunctionsTest.java
@@ -61,7 +61,7 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.Printer;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkList;
@@ -2912,7 +2912,7 @@
"directory = ruleContext.actions.declare_directory('dir')",
"def _short_path(f): return f.short_path", // For easier assertions
"args.add_all([directory], map_each=_short_path)");
- SkylarkList<?> result = (SkylarkList<?>) eval("args, directory");
+ Sequence<?> result = (Sequence<?>) eval("args, directory");
Args args = (Args) result.get(0);
Artifact directory = (Artifact) result.get(1);
CommandLine commandLine = args.build();
@@ -2939,7 +2939,7 @@
"def _short_path(f): return f.short_path", // For easier assertions
"args.add_all([directory], map_each=_short_path, expand_directories=True)",
"args.add_all([directory], map_each=_short_path, expand_directories=False)");
- SkylarkList<?> result = (SkylarkList<?>) eval("args, directory");
+ Sequence<?> result = (Sequence<?>) eval("args, directory");
Args args = (Args) result.get(0);
Artifact directory = (Artifact) result.get(1);
CommandLine commandLine = args.build();
@@ -2974,7 +2974,7 @@
"args.add_all([directory])",
"params = ruleContext.actions.declare_file('params')",
"ruleContext.actions.write(params, args)");
- SkylarkList<?> result = (SkylarkList<?>) eval("params, directory");
+ Sequence<?> result = (Sequence<?>) eval("params, directory");
Artifact params = (Artifact) result.get(0);
Artifact directory = (Artifact) result.get(1);
ActionAnalysisMetadata action =
diff --git a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java
index 244d541..a0ee468 100644
--- a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java
@@ -42,7 +42,7 @@
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.Mutability;
import com.google.devtools.build.lib.syntax.ParserInput;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.Starlark;
import com.google.devtools.build.lib.syntax.StarlarkFile;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -367,7 +367,7 @@
Scope.newBuilder()
.setName("global")
.addBinding(
- getValueProto("x", SkylarkList.createImmutable(ImmutableList.of(1, 2, 3)))))
+ getValueProto("x", Sequence.createImmutable(ImmutableList.of(1, 2, 3)))))
.build());
}
@@ -391,7 +391,7 @@
Value xValue = frames.getFrame(0).getScope(0).getBinding(0);
assertValuesEqualIgnoringId(
- xValue, getValueProto("x", SkylarkList.createImmutable(ImmutableList.of(1, 2, 3))));
+ xValue, getValueProto("x", Sequence.createImmutable(ImmutableList.of(1, 2, 3))));
List<Value> children = getChildren(xValue);
@@ -522,7 +522,7 @@
ListFramesResponse frames = listFrames(threadId);
assertThat(frames.getFrame(0).getScope(0).getBindingList())
- .contains(getValueProto("x", SkylarkList.createImmutable(ImmutableList.of(5, 6))));
+ .contains(getValueProto("x", Sequence.createImmutable(ImmutableList.of(5, 6))));
}
@Test
@@ -556,7 +556,7 @@
ListFramesResponse frames = listFrames(threadId);
assertThat(frames.getFrame(0).getScope(0).getBindingList())
- .contains(getValueProto("x", SkylarkList.createImmutable(ImmutableList.of(1, 2, 3, 4))));
+ .contains(getValueProto("x", Sequence.createImmutable(ImmutableList.of(1, 2, 3, 4))));
}
@Test
diff --git a/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/GoldenCase.java b/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/GoldenCase.java
index a3200bf..a2214dc 100644
--- a/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/GoldenCase.java
+++ b/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/GoldenCase.java
@@ -20,8 +20,8 @@
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import com.google.devtools.build.lib.syntax.FuncallExpression;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -193,11 +193,7 @@
extraKeywords = @Param(name = "kwargs"),
useStarlarkThread = true)
public String twoArgMethodWithParamsAndInfoAndKwargs(
- String one,
- Integer two,
- SkylarkList<?> args,
- SkylarkDict<?, ?> kwargs,
- StarlarkThread thread) {
+ String one, Integer two, Sequence<?> args, SkylarkDict<?, ?> kwargs, StarlarkThread thread) {
return "yar";
}
@@ -230,10 +226,10 @@
name = "method_with_list_and_dict",
documented = false,
parameters = {
- @Param(name = "one", type = SkylarkList.class, named = true),
+ @Param(name = "one", type = Sequence.class, named = true),
@Param(name = "two", type = SkylarkDict.class, named = true),
})
- public String methodWithListandDict(SkylarkList<?> one, SkylarkDict<?, ?> two) {
+ public String methodWithListandDict(Sequence<?> one, SkylarkDict<?, ?> two) {
return "bar";
}
}
diff --git a/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/SpecifiedGenericType.java b/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/SpecifiedGenericType.java
index 0d0755c..19dbae0 100644
--- a/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/SpecifiedGenericType.java
+++ b/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/SpecifiedGenericType.java
@@ -17,8 +17,8 @@
import com.google.devtools.build.lib.skylarkinterface.Param;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
/**
* Test case for a SkylarkCallable method which has a parameter with an unsafely specified generic
@@ -31,7 +31,7 @@
name = "specified_generic_type",
documented = false,
parameters = {
- @Param(name = "one", type = SkylarkList.class, named = true),
+ @Param(name = "one", type = Sequence.class, named = true),
})
public String specifiedGenericType(SkylarkDict<?, String> one) {
return "bar";
diff --git a/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/StructFieldWithExtraArgs.java b/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/StructFieldWithExtraArgs.java
index 1472480..f3b1f04 100644
--- a/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/StructFieldWithExtraArgs.java
+++ b/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/StructFieldWithExtraArgs.java
@@ -17,18 +17,17 @@
import com.google.devtools.build.lib.skylarkinterface.Param;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
-import com.google.devtools.build.lib.syntax.SkylarkList;
+import com.google.devtools.build.lib.syntax.Sequence;
/** Test case which verifies a struct field method cannot specify extraArgs. */
public class StructFieldWithExtraArgs implements SkylarkValue {
@SkylarkCallable(
- name = "struct_field_method_with_extra_args",
- documented = false,
- structField = true,
- extraPositionals = @Param(name = "args")
- )
- public String structFieldMethodWithExtraArgs(SkylarkList<?> args) {
+ name = "struct_field_method_with_extra_args",
+ documented = false,
+ structField = true,
+ extraPositionals = @Param(name = "args"))
+ public String structFieldMethodWithExtraArgs(Sequence<?> args) {
return "Cat.";
}
}
diff --git a/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/ToggledKwargsParam.java b/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/ToggledKwargsParam.java
index d0eded9..0ba4095 100644
--- a/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/ToggledKwargsParam.java
+++ b/src/test/java/com/google/devtools/build/lib/skylarkinterface/processor/testsources/ToggledKwargsParam.java
@@ -17,8 +17,8 @@
import com.google.devtools.build.lib.skylarkinterface.Param;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
+import com.google.devtools.build.lib.syntax.Sequence;
import com.google.devtools.build.lib.syntax.SkylarkDict;
-import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.syntax.StarlarkSemantics.FlagIdentifier;
import com.google.devtools.build.lib.syntax.StarlarkThread;
@@ -42,11 +42,7 @@
enableOnlyWithFlag = FlagIdentifier.EXPERIMENTAL_BUILD_SETTING_API),
useStarlarkThread = true)
public String toggledKwargsMethod(
- String one,
- Integer two,
- SkylarkList<?> args,
- SkylarkDict<?, ?> kwargs,
- StarlarkThread thread) {
+ String one, Integer two, Sequence<?> args, SkylarkDict<?, ?> kwargs, StarlarkThread thread) {
return "cat";
}
}
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/BaseFunctionTest.java b/src/test/java/com/google/devtools/build/lib/syntax/BaseFunctionTest.java
index 79eeaa7..4b5edb5 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/BaseFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/BaseFunctionTest.java
@@ -33,8 +33,8 @@
public class BaseFunctionTest extends EvaluationTestCase {
/**
- * Handy implementation of {@link BaseFunction} that returns all its args as a list.
- * (We'd use SkylarkList.tuple, but it can't handle null.)
+ * Handy implementation of {@link BaseFunction} that returns all its args as a list. (We'd use
+ * Sequence.tuple, but it can't handle null.)
*/
private static class TestingBaseFunction extends BaseFunction {
TestingBaseFunction(FunctionSignature signature) {
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java
index de86116..ff07322 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java
@@ -227,55 +227,49 @@
}
@SkylarkCallable(
- name = "with_params",
- documented = false,
- parameters = {
- @Param(name = "pos1"),
- @Param(name = "pos2", defaultValue = "False", type = Boolean.class),
- @Param(
- name = "posOrNamed",
- defaultValue = "False",
- type = Boolean.class,
- positional = true,
- named = true
- ),
- @Param(name = "named", type = Boolean.class, positional = false, named = true),
- @Param(
- name = "optionalNamed",
- type = Boolean.class,
- defaultValue = "False",
- positional = false,
- named = true
- ),
- @Param(
- name = "nonNoneable",
- type = Object.class,
- defaultValue = "\"a\"",
- positional = false,
- named = true
- ),
- @Param(
- name = "noneable",
- type = Integer.class,
- defaultValue = "None",
- noneable = true,
- positional = false,
- named = true
- ),
- @Param(
- name = "multi",
- allowedTypes = {
- @ParamType(type = String.class),
- @ParamType(type = Integer.class),
- @ParamType(type = SkylarkList.class, generic1 = Integer.class),
- },
- defaultValue = "None",
- noneable = true,
- positional = false,
- named = true
- )
- }
- )
+ name = "with_params",
+ documented = false,
+ parameters = {
+ @Param(name = "pos1"),
+ @Param(name = "pos2", defaultValue = "False", type = Boolean.class),
+ @Param(
+ name = "posOrNamed",
+ defaultValue = "False",
+ type = Boolean.class,
+ positional = true,
+ named = true),
+ @Param(name = "named", type = Boolean.class, positional = false, named = true),
+ @Param(
+ name = "optionalNamed",
+ type = Boolean.class,
+ defaultValue = "False",
+ positional = false,
+ named = true),
+ @Param(
+ name = "nonNoneable",
+ type = Object.class,
+ defaultValue = "\"a\"",
+ positional = false,
+ named = true),
+ @Param(
+ name = "noneable",
+ type = Integer.class,
+ defaultValue = "None",
+ noneable = true,
+ positional = false,
+ named = true),
+ @Param(
+ name = "multi",
+ allowedTypes = {
+ @ParamType(type = String.class),
+ @ParamType(type = Integer.class),
+ @ParamType(type = Sequence.class, generic1 = Integer.class),
+ },
+ defaultValue = "None",
+ noneable = true,
+ positional = false,
+ named = true)
+ })
public String withParams(
Integer pos1,
boolean pos2,
@@ -359,7 +353,7 @@
allowedTypes = {
@ParamType(type = String.class),
@ParamType(type = Integer.class),
- @ParamType(type = SkylarkList.class, generic1 = Integer.class),
+ @ParamType(type = Sequence.class, generic1 = Integer.class),
},
defaultValue = "None",
noneable = true,
@@ -428,7 +422,7 @@
extraPositionals = @Param(name = "args"),
useStarlarkThread = true)
public String withArgsAndThread(
- Integer pos1, boolean pos2, boolean named, SkylarkList<?> args, StarlarkThread thread) {
+ Integer pos1, boolean pos2, boolean named, Sequence<?> args, StarlarkThread thread) {
String argsString =
"args(" + args.stream().map(Printer::debugPrint).collect(joining(", ")) + ")";
return "with_args_and_thread("
@@ -468,15 +462,14 @@
}
@SkylarkCallable(
- name = "with_args_and_kwargs",
- documented = false,
- parameters = {
- @Param(name = "foo", named = true, positional = true, type = String.class),
- },
- extraPositionals = @Param(name = "args"),
- extraKeywords = @Param(name = "kwargs")
- )
- public String withArgsAndKwargs(String foo, SkylarkList<?> args, SkylarkDict<?, ?> kwargs)
+ name = "with_args_and_kwargs",
+ documented = false,
+ parameters = {
+ @Param(name = "foo", named = true, positional = true, type = String.class),
+ },
+ extraPositionals = @Param(name = "args"),
+ extraKeywords = @Param(name = "kwargs"))
+ public String withArgsAndKwargs(String foo, Sequence<?> args, SkylarkDict<?, ?> kwargs)
throws EvalException {
String argsString =
"args(" + args.stream().map(Printer::debugPrint).collect(joining(", ")) + ")";
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkListTest.java b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkListTest.java
index d31a7e0..f7eeb0b 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkListTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkListTest.java
@@ -24,9 +24,7 @@
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
-/**
- * Tests for SkylarkList.
- */
+/** Tests for Sequence. */
@RunWith(JUnit4.class)
public class SkylarkListTest extends EvaluationTestCase {
@@ -64,8 +62,8 @@
}
@SuppressWarnings("unchecked")
- private SkylarkList<Object> listEval(String... input) throws Exception {
- return (SkylarkList<Object>) eval(input);
+ private Sequence<Object> listEval(String... input) throws Exception {
+ return (Sequence<Object>) eval(input);
}
@Test
@@ -156,8 +154,7 @@
@Test
public void testListConcat() throws Exception {
- assertThat(eval("[1, 2] + [3, 4]"))
- .isEqualTo(SkylarkList.createImmutable(Tuple.of(1, 2, 3, 4)));
+ assertThat(eval("[1, 2] + [3, 4]")).isEqualTo(Sequence.createImmutable(Tuple.of(1, 2, 3, 4)));
}
@Test
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/StarlarkFileTest.java b/src/test/java/com/google/devtools/build/lib/syntax/StarlarkFileTest.java
index feb49ae..0d1fafe 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/StarlarkFileTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/StarlarkFileTest.java
@@ -58,7 +58,7 @@
// input1.BUILD contains:
// x = [1,2,'foo',4] + [1,2, "%s%d" % ('foo', 1)]
assertThat(thread.moduleLookup("x"))
- .isEqualTo(SkylarkList.createImmutable(Tuple.of(1, 2, "foo", 4, 1, 2, "foo1")));
+ .isEqualTo(Sequence.createImmutable(Tuple.of(1, 2, "foo", 4, 1, 2, "foo1")));
}
@Test