diff options
author | 2016-06-28 16:13:35 +0000 | |
---|---|---|
committer | 2016-06-29 08:53:49 +0000 | |
commit | 34cdae35dba538a5d834b9ae18c4e493bbad878c (patch) | |
tree | fdfe717f6033aaf26144bd320fff0da0d6a6bc48 /src/main/java/com/google/devtools/build/lib/rules | |
parent | 116c2f6724718fc408e0c73c9026d89281c75e87 (diff) |
Reorganize Skylark Reference documentation.
--
MOS_MIGRATED_REVID=126081020
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules')
18 files changed, 150 insertions, 89 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkAttr.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkAttr.java index 7038b43424..5b0fd57988 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkAttr.java +++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkAttr.java @@ -26,6 +26,7 @@ import com.google.devtools.build.lib.packages.BuildType; import com.google.devtools.build.lib.packages.SkylarkAspect; import com.google.devtools.build.lib.skylarkinterface.Param; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; +import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; import com.google.devtools.build.lib.skylarkinterface.SkylarkSignature; import com.google.devtools.build.lib.syntax.BuiltinFunction; import com.google.devtools.build.lib.syntax.Environment; @@ -54,13 +55,14 @@ import javax.annotation.Nullable; /** * A helper class to provide Attr module in Skylark. * - * <p>It exposes functions (e.g. 'attr.string', 'attr.label_list', etc.) to Skylark - * users. The functions are executed through reflection. As everywhere in Skylark, - * arguments are type-checked with the signature and cannot be null. + * <p>It exposes functions (e.g. 'attr.string', 'attr.label_list', etc.) to Skylark users. The + * functions are executed through reflection. As everywhere in Skylark, arguments are type-checked + * with the signature and cannot be null. */ @SkylarkModule( name = "attr", namespace = true, + category = SkylarkModuleCategory.BUILTIN, doc = "Module for creating new attributes. " + "They are only for use with the <a href=\"globals.html#rule\">rule</a> function." @@ -1054,9 +1056,14 @@ public final class SkylarkAttr { } }; - /** - * A descriptor of an attribute defined in Skylark. - */ + /** A descriptor of an attribute defined in Skylark. */ + @SkylarkModule( + name = "attr_defintion", + category = SkylarkModuleCategory.NONE, + doc = + "Representation of a definition of an attribute; cobnstructed by <code>attr.*</code>" + + " functions." + ) public static final class Descriptor { private final Attribute.Builder<?> attributeBuilder; private final ImmutableList<SkylarkAspect> aspects; diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkCommandLine.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkCommandLine.java index 8e107b93a3..7fd5fe4dc4 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkCommandLine.java +++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkCommandLine.java @@ -20,6 +20,7 @@ import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.skylarkinterface.Param; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; +import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; import com.google.devtools.build.lib.skylarkinterface.SkylarkSignature; import com.google.devtools.build.lib.syntax.BuiltinFunction; import com.google.devtools.build.lib.syntax.Environment; @@ -27,11 +28,13 @@ import com.google.devtools.build.lib.syntax.SkylarkList.MutableList; import com.google.devtools.build.lib.syntax.SkylarkNestedSet; import com.google.devtools.build.lib.syntax.SkylarkSignatureProcessor; -/** - * A Skylark module class to create memory efficient command lines. - */ -@SkylarkModule(name = "cmd_helper", namespace = true, - doc = "Module for creating memory efficient command lines.") +/** A Skylark module class to create memory efficient command lines. */ +@SkylarkModule( + name = "cmd_helper", + namespace = true, + category = SkylarkModuleCategory.BUILTIN, + doc = "Module for creating memory efficient command lines." +) public class SkylarkCommandLine { @SkylarkSignature(name = "join_paths", objectType = SkylarkCommandLine.class, diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkFileType.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkFileType.java index 94ca4c8b5a..6b31fd8761 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkFileType.java +++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkFileType.java @@ -18,17 +18,20 @@ import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.actions.Artifact; 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.util.FileType; import com.google.devtools.build.lib.util.FileTypeSet; import java.util.List; -/** - * A wrapper class for FileType and FileTypeSet functionality in Skylark. - */ -@SkylarkModule(name = "FileType", - doc = "Deprecated. File type for file filtering. Can be used to filter collections of labels " - + "for certain file types.") +/** A wrapper class for FileType and FileTypeSet functionality in Skylark. */ +@SkylarkModule( + name = "FileType", + category = SkylarkModuleCategory.NONE, + doc = + "Deprecated. File type for file filtering. Can be used to filter collections of labels " + + "for certain file types." +) public class SkylarkFileType { private final FileType fileType; diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java index 5c5baba790..a956e4d467 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java +++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java @@ -46,6 +46,7 @@ import com.google.devtools.build.lib.shell.ShellUtils; import com.google.devtools.build.lib.shell.ShellUtils.TokenizationException; 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.ClassObject.SkylarkClassObject; import com.google.devtools.build.lib.syntax.EvalException; import com.google.devtools.build.lib.syntax.FuncallExpression.FuncallException; @@ -69,13 +70,16 @@ import java.util.Set; import javax.annotation.Nullable; -/** - * A Skylark API for the ruleContext. - */ -@SkylarkModule(name = "ctx", doc = "The context of the rule containing helper functions and " - + "information about attributes, depending targets and outputs. " - + "You get a ctx object as an argument to the <code>implementation</code> function when " - + "you create a rule.") +/** A Skylark API for the ruleContext. */ +@SkylarkModule( + name = "ctx", + category = SkylarkModuleCategory.BUILTIN, + doc = + "The context of the rule containing helper functions and " + + "information about attributes, depending targets and outputs. " + + "You get a ctx object as an argument to the <code>implementation</code> function when " + + "you create a rule." +) public final class SkylarkRuleContext { private static final String DOC_NEW_FILE_TAIL = "Does not actually create a file on the file " @@ -330,6 +334,7 @@ public final class SkylarkRuleContext { @SkylarkModule( name = "rule_attributes", + category = SkylarkModuleCategory.NONE, doc = "Information about attributes of a rule an aspect is applied to." ) private static class SkylarkRuleAttributesCollection { diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSkylarkApiProvider.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSkylarkApiProvider.java index e64bc92f61..ed8434de93 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSkylarkApiProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidSkylarkApiProvider.java @@ -27,17 +27,21 @@ import com.google.devtools.build.lib.rules.java.JavaRuleOutputJarsProvider; import com.google.devtools.build.lib.rules.java.JavaRuleOutputJarsProvider.OutputJar; 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 javax.annotation.Nullable; /** - * A class that exposes the Android providers to Skylark. It is intended to provide a - * simple and stable interface for Skylark users. + * A class that exposes the Android providers to Skylark. It is intended to provide a simple and + * stable interface for Skylark users. */ @SkylarkModule( name = "AndroidSkylarkApiProvider", - doc = "Provides access to information about Android rules. Every Android-related target provides " - + "this struct, accessible as a 'java' field on a Target struct." + title = "android", + category = SkylarkModuleCategory.PROVIDER, + doc = + "Provides access to information about Android rules. Every Android-related target provides " + + "this struct, accessible as a 'android' field on a Target struct." ) public class AndroidSkylarkApiProvider extends SkylarkApiProvider { /** The name of the field in Skylark used to access this class. */ @@ -148,12 +152,11 @@ public class AndroidSkylarkApiProvider extends SkylarkApiProvider { }))); } - /** - * Helper class to provide information about IDLs related to this rule. - */ + /** Helper class to provide information about IDLs related to this rule. */ @SkylarkModule( - name = "AndroidSkylarkIdlInfo", - doc = "Provides access to information about Android rules" + name = "AndroidSkylarkIdlInfo", + category = SkylarkModuleCategory.NONE, + doc = "Provides access to information about Android rules" ) public class IdlInfo { @SkylarkCallable( diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java index ebc8c9831f..c8fe054b50 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/AppleConfiguration.java @@ -32,6 +32,7 @@ import com.google.devtools.build.lib.rules.apple.AppleCommandLineOptions.AppleBi import com.google.devtools.build.lib.rules.apple.Platform.PlatformType; 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.util.Preconditions; import java.util.ArrayList; @@ -41,10 +42,12 @@ import java.util.Map; import javax.annotation.Nullable; -/** - * A configuration containing flags required for Apple platforms and tools. - */ -@SkylarkModule(name = "apple", doc = "A configuration fragment for Apple platforms") +/** A configuration containing flags required for Apple platforms and tools. */ +@SkylarkModule( + name = "apple", + doc = "A configuration fragment for Apple platforms", + category = SkylarkModuleCategory.CONFIGURATION_FRAGMENT +) @Immutable public class AppleConfiguration extends BuildConfiguration.Fragment { /** diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/DottedVersion.java b/src/main/java/com/google/devtools/build/lib/rules/apple/DottedVersion.java index ebd22f4146..7d97b502d3 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/DottedVersion.java +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/DottedVersion.java @@ -21,6 +21,7 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.Ordering; 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 java.util.ArrayList; import java.util.Objects; @@ -36,8 +37,7 @@ import java.util.regex.Pattern; * * <p>Dotted versions are ordered using natural integer sorting on components in order from first to * last where any missing element is considered to have the value 0 if they don't contain any - * non-numeric characters. For example: - * <pre> + * non-numeric characters. For example: <pre> * 3.1.25 > 3.1.1 * 3.1.20 > 3.1.2 * 3.1.1 > 3.1 @@ -50,8 +50,7 @@ import java.util.regex.Pattern; * component with a smaller integer. If the integers are the same, the alphabetic sequences are * compared lexicographically, and if <i>they</i> turn out to be the same, the final (optional) * integer is compared. As with the leading integer, this final integer is considered to be 0 if not - * present. For example: - * <pre> + * present. For example: <pre> * 3.1.1 > 3.1.1beta3 * 3.1.1beta1 > 3.1.0 * 3.1 > 3.1.0alpha1 @@ -66,8 +65,10 @@ import java.util.regex.Pattern; */ @SkylarkModule( name = "DottedVersion", - doc = "A value representing a version with multiple components, seperated by periods, such as " - + "1.2.3.4." + category = SkylarkModuleCategory.NONE, + doc = + "A value representing a version with multiple components, seperated by periods, such as " + + "1.2.3.4." ) public final class DottedVersion implements Comparable<DottedVersion> { private static final Splitter DOT_SPLITTER = Splitter.on('.'); diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/Platform.java b/src/main/java/com/google/devtools/build/lib/rules/apple/Platform.java index 7a8b1d1990..987c4fd0ef 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/apple/Platform.java +++ b/src/main/java/com/google/devtools/build/lib/rules/apple/Platform.java @@ -17,6 +17,7 @@ package com.google.devtools.build.lib.rules.apple; import com.google.common.collect.ImmutableSet; 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.util.Preconditions; import java.util.Locale; @@ -24,10 +25,12 @@ import java.util.Set; import javax.annotation.Nullable; -/** - * An enum that can be used to distinguish between various apple platforms. - */ -@SkylarkModule(name = "platform", doc = "Distinguishes between various apple platforms.") +/** An enum that can be used to distinguish between various apple platforms. */ +@SkylarkModule( + name = "platform", + category = SkylarkModuleCategory.NONE, + doc = "Distinguishes between various apple platforms." +) public enum Platform { IOS_DEVICE("iPhoneOS", PlatformType.IOS), diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcSkylarkApiProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcSkylarkApiProvider.java index 4f250b7b18..cd5f64282b 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcSkylarkApiProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcSkylarkApiProvider.java @@ -21,16 +21,21 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.rules.SkylarkApiProvider; 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.vfs.PathFragment; /** - * A class that exposes the C++ providers to Skylark. It is intended to provide a - * simple and stable interface for Skylark users. + * A class that exposes the C++ providers to Skylark. It is intended to provide a simple and stable + * interface for Skylark users. */ @SkylarkModule( - name = "CcSkylarkApiProvider", doc = "Provides access to information about C++ rules. " - + "Every C++-related target provides this struct, accessible as a 'cc' field on " - + "a Target struct.") + name = "CcSkylarkApiProvider", + category = SkylarkModuleCategory.PROVIDER, + doc = + "Provides access to information about C++ rules. " + + "Every C++-related target provides this struct, accessible as a 'cc' field on " + + "a Target struct." +) public final class CcSkylarkApiProvider extends SkylarkApiProvider { /** The name of the field in Skylark used to access this class. */ public static final String NAME = "cc"; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java index 9889401014..0d5d16430a 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java @@ -40,6 +40,7 @@ import com.google.devtools.build.lib.events.EventHandler; import com.google.devtools.build.lib.rules.cpp.CppConfigurationLoader.CppConfigurationParameters; 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.util.Preconditions; import com.google.devtools.build.lib.vfs.Path; import com.google.devtools.build.lib.vfs.PathFragment; @@ -60,12 +61,15 @@ import java.util.Map; import java.util.Set; /** - * This class represents the C/C++ parts of the {@link BuildConfiguration}, - * including the host architecture, target architecture, compiler version, and - * a standard library version. It has information about the tools locations and - * the flags required for compiling. + * This class represents the C/C++ parts of the {@link BuildConfiguration}, including the host + * architecture, target architecture, compiler version, and a standard library version. It has + * information about the tools locations and the flags required for compiling. */ -@SkylarkModule(name = "cpp", doc = "A configuration fragment for C++") +@SkylarkModule( + name = "cpp", + doc = "A configuration fragment for C++", + category = SkylarkModuleCategory.CONFIGURATION_FRAGMENT +) @Immutable public class CppConfiguration extends BuildConfiguration.Fragment { diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationInfoProvider.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationInfoProvider.java index 76750e72ea..7a577eca27 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationInfoProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompilationInfoProvider.java @@ -21,12 +21,14 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; +import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; /** * A class that provides compilation information in Java rules, for perusal of aspects and tools. */ @SkylarkModule( - name = "JavaCompilationInfo", + name = "java_compilation_info", + category = SkylarkModuleCategory.NONE, doc = "Provides access to compilation information for Java rules" ) @Immutable diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java index 8036b9cd2b..27f7d52443 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaConfiguration.java @@ -28,17 +28,20 @@ import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventHandler; 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.common.options.TriState; import java.util.List; import javax.annotation.Nullable; -/** - * A java compiler configuration containing the flags required for compilation. - */ +/** A java compiler configuration containing the flags required for compilation. */ @Immutable -@SkylarkModule(name = "java", doc = "A java compiler configuration") +@SkylarkModule( + name = "java", + doc = "A java compiler configuration", + category = SkylarkModuleCategory.CONFIGURATION_FRAGMENT +) public final class JavaConfiguration extends Fragment { /** * Values for the --experimental_java_classpath option diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaGenJarsProvider.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaGenJarsProvider.java index c676b2243f..12cd42f15f 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaGenJarsProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaGenJarsProvider.java @@ -20,15 +20,15 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; 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 javax.annotation.Nullable; -/** - * The collection of gen jars from the transitive closure. - */ +/** The collection of gen jars from the transitive closure. */ @Immutable @SkylarkModule( - name = "JavaAnnotationProcessing", + name = "java_annotation-processing", + category = SkylarkModuleCategory.NONE, doc = "Information about jars that are a result of annotation processing for a Java rule." ) public final class JavaGenJarsProvider implements TransitiveInfoProvider { 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 11d16fd2e8..3cbcf252fc 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 @@ -20,25 +20,27 @@ import com.google.devtools.build.lib.analysis.TransitiveInfoProvider; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; 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.util.Preconditions; import javax.annotation.Nullable; -/** - * Provides information about jar files produced by a Java rule. - */ +/** Provides information about jar files produced by a Java rule. */ @Immutable -@SkylarkModule(name = "JavaOutputJars", doc = "Information about outputs of a Java rule") +@SkylarkModule( + name = "java_output_jars", + category = SkylarkModuleCategory.NONE, + doc = "Information about outputs of a Java rule" +) public final class JavaRuleOutputJarsProvider implements TransitiveInfoProvider { public static final JavaRuleOutputJarsProvider EMPTY = new JavaRuleOutputJarsProvider(ImmutableList.<OutputJar>of(), null); - /** - * A collection of artifacts associated with a jar output. - */ + /** A collection of artifacts associated with a jar output. */ @SkylarkModule( - name = "JavaOutput", + name = "java_output", + category = SkylarkModuleCategory.NONE, doc = "Java classes jar, together with their associated source and interface archives" ) @Immutable diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiProvider.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiProvider.java index eb6e7fa89e..6d5f353646 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiProvider.java @@ -22,15 +22,20 @@ import com.google.devtools.build.lib.collect.nestedset.Order; import com.google.devtools.build.lib.rules.SkylarkApiProvider; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; +import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; /** - * A class that exposes the Java providers to Skylark. It is intended to provide a - * simple and stable interface for Skylark users. + * A class that exposes the Java providers to Skylark. It is intended to provide a simple and stable + * interface for Skylark users. */ @SkylarkModule( - name = "JavaSkylarkApiProvider", - doc = "Provides access to information about Java rules. Every Java-related target provides " - + "this struct, accessible as a 'java' field on a Target struct.") + name = "JavaSkylarkApiProvider", + title = "java", + category = SkylarkModuleCategory.PROVIDER, + doc = + "Provides access to information about Java rules. Every Java-related target provides " + + "this struct, accessible as a 'java' field on a Target struct." +) public final class JavaSkylarkApiProvider extends SkylarkApiProvider { /** The name of the field in Skylark used to access this class. */ public static final String NAME = "java"; diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/Jvm.java b/src/main/java/com/google/devtools/build/lib/rules/java/Jvm.java index edecece6aa..37271b8b48 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/Jvm.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/Jvm.java @@ -20,17 +20,21 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; 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.util.OsUtils; import com.google.devtools.build.lib.util.Preconditions; import com.google.devtools.build.lib.vfs.PathFragment; /** - * This class represents a Java virtual machine with a host system and a path. - * If the JVM comes from the client, it can optionally also contain a label - * pointing to a target that contains all the necessary files. + * This class represents a Java virtual machine with a host system and a path. If the JVM comes from + * the client, it can optionally also contain a label pointing to a target that contains all the + * necessary files. */ -@SkylarkModule(name = "jvm", - doc = "A configuration fragment representing the Java virtual machine.") +@SkylarkModule( + name = "jvm", + category = SkylarkModuleCategory.CONFIGURATION_FRAGMENT, + doc = "A configuration fragment representing the Java virtual machine." +) @Immutable public final class Jvm extends BuildConfiguration.Fragment { private final PathFragment javaHome; diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java index 69596dd723..8da579bde8 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java @@ -24,15 +24,18 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.apple.DottedVersion; 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.util.Preconditions; import com.google.devtools.build.lib.vfs.Path; import javax.annotation.Nullable; -/** - * A compiler configuration containing flags required for Objective-C compilation. - */ -@SkylarkModule(name = "objc", doc = "A configuration fragment for Objective-C") +/** A compiler configuration containing flags required for Objective-C compilation. */ +@SkylarkModule( + name = "objc", + category = SkylarkModuleCategory.CONFIGURATION_FRAGMENT, + doc = "A configuration fragment for Objective-C" +) @Immutable public class ObjcConfiguration extends BuildConfiguration.Fragment { @VisibleForTesting 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 d16f80bf64..7bf91b8353 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 @@ -29,6 +29,7 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.cpp.CppModuleMap; import com.google.devtools.build.lib.rules.cpp.LinkerInputs; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; +import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; import com.google.devtools.build.lib.syntax.ClassObject.SkylarkClassObject; import com.google.devtools.build.lib.syntax.EvalUtils; import com.google.devtools.build.lib.util.Preconditions; @@ -43,7 +44,11 @@ import java.util.Map; * deps that are needed for building Objective-C rules. */ @Immutable -@SkylarkModule(name = "ObjcProvider", doc = "A provider for compilation and linking of objc.") +@SkylarkModule( + name = "ObjcProvider", + category = SkylarkModuleCategory.PROVIDER, + doc = "A provider for compilation and linking of objc." +) public final class ObjcProvider extends SkylarkClassObject implements TransitiveInfoProvider { /** |