Fix miscategorized Starlark provider types
RELNOTES: None.
PiperOrigin-RevId: 259394477
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/ProtoInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/ProtoInfoApi.java
index 98a9aea..66d542b 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/ProtoInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/ProtoInfoApi.java
@@ -18,10 +18,12 @@
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
+import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
/** Info object propagating information about protocol buffer sources. */
@SkylarkModule(
name = "ProtoInfo",
+ category = SkylarkModuleCategory.PROVIDER,
doc =
"Encapsulates information provided by <a href=\""
+ "../../be/protocol-buffer.html#proto_library\">proto_library.</a>"
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/TemplateVariableInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/TemplateVariableInfoApi.java
index 0af0811..fe7527b 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/TemplateVariableInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/TemplateVariableInfoApi.java
@@ -17,23 +17,21 @@
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
+import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
/** Provides access to make variables from the current fragments. */
@SkylarkModule(
name = "TemplateVariableInfo",
- doc = "<b>WARNING</b>: The constructor of this provider is experimental and may go away at any "
- + "time."
- + "<p>Encapsulates template variables, that is, variables that can be referenced by "
- + "strings like <code>$(VARIABLE)</code> in BUILD files and expanded by "
- + "<code>ctx.expand_make_variables</code> and implicitly in certain attributes of "
- + "built-in rules."
- + "</p>"
- + "<p><code>TemplateVariableInfo</code> can be created by calling its eponymous "
- + "constructor with a string-to-string dict as an argument that specifies the variables "
- + "provided."
- + "</p>"
- + "<p>Example: <code>platform_common.TemplateVariableInfo({'FOO': 'bar'})</code>"
- + "</p>")
+ category = SkylarkModuleCategory.PROVIDER,
+ doc =
+ "<b>WARNING</b>: The constructor of this provider is experimental and may go away at any "
+ + "time.<p>Encapsulates template variables, that is, variables that can be referenced"
+ + " by strings like <code>$(VARIABLE)</code> in BUILD files and expanded by"
+ + " <code>ctx.expand_make_variables</code> and implicitly in certain attributes of"
+ + " built-in rules.</p><p><code>TemplateVariableInfo</code> can be created by calling"
+ + " its eponymous constructor with a string-to-string dict as an argument that"
+ + " specifies the variables provided.</p><p>Example:"
+ + " <code>platform_common.TemplateVariableInfo({'FOO': 'bar'})</code></p>")
public interface TemplateVariableInfoApi extends StructApi {
@SkylarkCallable(
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/XcodeConfigProviderApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/XcodeConfigProviderApi.java
index 71ef2a1..2d04a4a 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/XcodeConfigProviderApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/XcodeConfigProviderApi.java
@@ -18,6 +18,7 @@
import com.google.devtools.build.lib.skylarkinterface.Param;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
+import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
/**
* An interface for an info type containing the set of Apple versions computed from command line
@@ -25,9 +26,12 @@
*/
@SkylarkModule(
name = "XcodeVersionConfig",
+ category = SkylarkModuleCategory.PROVIDER,
doc = "The set of Apple versions computed from command line options and the xcode_config rule.")
-public interface XcodeConfigProviderApi<ApplePlatformApiT extends ApplePlatformApi,
- ApplePlatformTypeApiT extends ApplePlatformTypeApi> extends StructApi {
+public interface XcodeConfigProviderApi<
+ ApplePlatformApiT extends ApplePlatformApi,
+ ApplePlatformTypeApiT extends ApplePlatformTypeApi>
+ extends StructApi {
@SkylarkCallable(name = "xcode_version",
doc = "Returns the Xcode version that is being used to build.<p>"
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/config/ConfigFeatureFlagProviderApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/config/ConfigFeatureFlagProviderApi.java
index 362f1cb..a33b892 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/config/ConfigFeatureFlagProviderApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/config/ConfigFeatureFlagProviderApi.java
@@ -18,14 +18,13 @@
import com.google.devtools.build.lib.skylarkinterface.Param;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
+import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
-/**
- * An info object for config_feature_flag rules.
- */
+/** An info object for config_feature_flag rules. */
@SkylarkModule(
- name = "FeatureFlagInfo",
- doc = "A provider used to access information about config_feature_flag rules."
-)
+ name = "FeatureFlagInfo",
+ category = SkylarkModuleCategory.PROVIDER,
+ doc = "A provider used to access information about config_feature_flag rules.")
public interface ConfigFeatureFlagProviderApi extends StructApi {
@SkylarkCallable(
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcInfoApi.java
index 54238d0..ea001ca 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcInfoApi.java
@@ -31,7 +31,11 @@
@SkylarkModule(
name = "CcInfo",
category = SkylarkModuleCategory.PROVIDER,
- doc = "A provider containing information for C++ compilation and linking.")
+ doc =
+ "A provider for compilation and linking of C++. This "
+ + "is also a marking provider telling C++ rules that they can depend on the rule "
+ + "with this provider. If it is not intended for the rule to be depended on by C++, "
+ + "the rule should wrap the CcInfo in some other provider.")
public interface CcInfoApi extends StructApi {
String NAME = "CcInfo";
@@ -47,14 +51,13 @@
structField = true)
CcLinkingContextApi getCcLinkingContext();
- /** The provider implementing this can construct the CcInfo provider. */
+ /** The provider implementing this can construct CcInfo objects. */
@SkylarkModule(
- name = "CcProvider",
- doc =
- "A provider for compilation and linking of C++. This "
- + "is also a marking provider telling C++ rules that they can depend on the rule "
- + "with this provider. If it is not intended for the rule to be depended on by C++, "
- + "the rule should wrap the CcInfo in some other provider.")
+ name = "Provider",
+ doc = "",
+ // This object is documented via the CcInfo documentation and the docuemntation of its
+ // callable function.
+ documented = false)
interface Provider extends ProviderApi {
@SkylarkCallable(
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcToolchainConfigInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcToolchainConfigInfoApi.java
index d5cd2b3..ffce686 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcToolchainConfigInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcToolchainConfigInfoApi.java
@@ -24,7 +24,7 @@
@SkylarkModule(
name = "CcToolchainConfigInfo",
namespace = true,
- category = SkylarkModuleCategory.BUILTIN,
+ category = SkylarkModuleCategory.PROVIDER,
doc =
"Additional layer of configurability for C++ rules. Encapsulates platform-dependent "
+ "specifics of C++ actions through features and action configs. It is used to "
@@ -38,6 +38,11 @@
String getProto();
/** Provider class for {@link CcToolchainConfigInfoApi} objects. */
- @SkylarkModule(name = "Provider", documented = false, doc = "")
+ @SkylarkModule(
+ name = "Provider",
+ // This object is documented via the CcInfo documentation and the docuemntation of its
+ // callable function.
+ documented = false,
+ doc = "")
public interface Provider extends ProviderApi {}
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcToolchainProviderApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcToolchainProviderApi.java
index 4be923f..0dc6513 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcToolchainProviderApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/cpp/CcToolchainProviderApi.java
@@ -19,12 +19,16 @@
import com.google.devtools.build.lib.skylarkinterface.Param;
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.EvalException;
import com.google.devtools.build.lib.syntax.SkylarkNestedSet;
import javax.annotation.Nullable;
/** Information about the C++ toolchain. */
-@SkylarkModule(name = "CcToolchainInfo", doc = "Information about the C++ compiler being used.")
+@SkylarkModule(
+ name = "CcToolchainInfo",
+ category = SkylarkModuleCategory.PROVIDER,
+ doc = "Information about the C++ compiler being used.")
public interface CcToolchainProviderApi<FeatureConfigurationT extends FeatureConfigurationApi>
extends ToolchainInfoApi {
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaRuntimeInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaRuntimeInfoApi.java
index c926833..3ccdfc6 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaRuntimeInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/java/JavaRuntimeInfoApi.java
@@ -17,11 +17,15 @@
import com.google.devtools.build.lib.skylarkbuildapi.platform.ToolchainInfoApi;
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.SkylarkNestedSet;
import com.google.devtools.build.lib.vfs.PathFragment;
/** Information about the Java runtime being used. */
-@SkylarkModule(name = "JavaRuntimeInfo", doc = "Information about the Java runtime being used.")
+@SkylarkModule(
+ name = "JavaRuntimeInfo",
+ category = SkylarkModuleCategory.PROVIDER,
+ doc = "Information about the Java runtime being used.")
public interface JavaRuntimeInfoApi extends ToolchainInfoApi {
@SkylarkCallable(
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 9cffb54..c610c02 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
@@ -18,6 +18,7 @@
import com.google.devtools.build.lib.skylarkbuildapi.platform.ToolchainInfoApi;
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.SkylarkNestedSet;
@@ -26,7 +27,8 @@
* field on a Target struct.
*/
@SkylarkModule(
- name = "JavaToolchainSkylarkApiProvider",
+ name = "JavaToolchainInfo",
+ category = SkylarkModuleCategory.PROVIDER,
doc =
"Provides access to information about the Java toolchain rule. "
+ "Accessible as a 'java_toolchain' field on a Target struct.")
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test/InstrumentedFilesInfoApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test/InstrumentedFilesInfoApi.java
index cb03e91..67ba206 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test/InstrumentedFilesInfoApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/test/InstrumentedFilesInfoApi.java
@@ -21,7 +21,7 @@
/** Contains information about instrumented files sources and instrumentation metadata. */
@SkylarkModule(
name = "InstrumentedFilesInfo",
- category = SkylarkModuleCategory.NONE,
+ category = SkylarkModuleCategory.PROVIDER,
doc =
"Contains information about instrumented file sources and instrumentation metadata "
+ "for purposes of code coverage. Rule targets which return an instance of this "
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 88610bf..8d4eef1 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
@@ -2523,7 +2523,7 @@
reporter.removeHandler(failFastHandler);
getConfiguredTarget("//a:r");
assertContainsEvent(
- "expected value of type 'JavaToolchainSkylarkApiProvider' for parameter 'java_toolchain'");
+ "expected value of type 'JavaToolchainInfo' for parameter 'java_toolchain'");
}
@Test