aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar cparsons <cparsons@google.com>2018-06-25 08:24:15 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-06-25 08:26:06 -0700
commite5a90da8656863da48865536ab9c75f7ecf8e23e (patch)
treeb2f115df175e7c25be644ae4f1415f7617c4a010
parent40e3c7cfddecea4c21e5ff418d598fd75afadfbb (diff)
Explicitly specify @SkylarkCallable parameters for apple skylarkbuildapi interfaces.
RELNOTES: None. PiperOrigin-RevId: 201956915
-rw-r--r--src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleCommonApi.java29
-rw-r--r--src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleConfigurationApi.java12
-rw-r--r--src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleToolchainApi.java12
-rw-r--r--src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/DottedVersionApi.java12
-rw-r--r--src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/ObjcConfigurationApi.java25
-rw-r--r--src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/XcodeConfigProviderApi.java24
6 files changed, 105 insertions, 9 deletions
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 2499ec4f3b..67c46d8791 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
@@ -215,7 +215,16 @@ public interface AppleCommonApi<FileApiT extends FileApi,
"Returns a <a href='dict.html'>dict</a> of environment variables that should be set "
+ "for actions that need to run build tools on an Apple host system, such as the "
+ " version of Xcode that should be used. The keys are variable names and the values "
- + " are their corresponding values."
+ + " are their corresponding values.",
+ parameters = {
+ @Param(
+ name = "xcode_config",
+ positional = true,
+ named = false,
+ type = XcodeConfigProviderApi.class,
+ doc = "A provider containing information about the xcode configuration."
+ ),
+ }
)
public ImmutableMap<String, String> getAppleHostSystemEnv(
XcodeConfigProviderApiT xcodeConfig);
@@ -226,7 +235,23 @@ public interface AppleCommonApi<FileApiT extends FileApi,
"Returns a <code>dict</code> of environment variables that should be set for actions "
+ "that build targets of the given Apple platform type. For example, this dictionary "
+ "contains variables that denote the platform name and SDK version with which to "
- + "build. The keys are variable names and the values are their corresponding values."
+ + "build. The keys are variable names and the values are their corresponding values.",
+ parameters = {
+ @Param(
+ name = "xcode_config",
+ positional = true,
+ named = false,
+ type = XcodeConfigProviderApi.class,
+ doc = "A provider containing information about the xcode configuration."
+ ),
+ @Param(
+ name = "platform",
+ positional = true,
+ named = false,
+ type = ApplePlatformApi.class,
+ doc = "The apple platform."
+ ),
+ }
)
public ImmutableMap<String, String> getTargetAppleEnvironment(
XcodeConfigProviderApiT xcodeConfig, ApplePlatformApiT platform);
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleConfigurationApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleConfigurationApi.java
index 03fac8476e..2a88d941db 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleConfigurationApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleConfigurationApi.java
@@ -14,6 +14,7 @@
package com.google.devtools.build.lib.skylarkbuildapi.apple;
+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;
@@ -56,7 +57,16 @@ public interface AppleConfigurationApi<ApplePlatformTypeApiT extends ApplePlatfo
name = "multi_arch_platform",
doc = "The platform of the current configuration for the given platform type. This should only "
+ "be invoked in a context where multiple architectures may be supported; consider "
- + "<a href='#single_arch_platform'>single_arch_platform</a> for other cases."
+ + "<a href='#single_arch_platform'>single_arch_platform</a> for other cases.",
+ parameters = {
+ @Param(
+ name = "platform_type",
+ positional = true,
+ named = false,
+ type = ApplePlatformTypeApi.class,
+ doc = "The apple platform type."
+ )
+ }
)
public ApplePlatformApi getMultiArchPlatform(ApplePlatformTypeApiT platformType);
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleToolchainApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleToolchainApi.java
index 7481a97010..e097692e02 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleToolchainApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/AppleToolchainApi.java
@@ -14,6 +14,7 @@
package com.google.devtools.build.lib.skylarkbuildapi.apple;
+import com.google.devtools.build.lib.skylarkinterface.Param;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
@@ -40,7 +41,16 @@ public interface AppleToolchainApi<AppleConfigurationApiT extends AppleConfigura
@SkylarkCallable(
name = "platform_developer_framework_dir",
- doc = "Returns the platform frameworks directory inside of Xcode for a given configuration."
+ doc = "Returns the platform frameworks directory inside of Xcode for a given configuration.",
+ parameters = {
+ @Param(
+ name = "configuration",
+ positional = true,
+ named = false,
+ type = AppleConfigurationApi.class,
+ doc = "The apple configuration fragment."
+ )
+ }
)
public String platformFrameworkDirFromConfig(AppleConfigurationApiT configuration);
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/DottedVersionApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/DottedVersionApi.java
index 609609d6c6..cef14204b2 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/DottedVersionApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/DottedVersionApi.java
@@ -14,6 +14,7 @@
package com.google.devtools.build.lib.skylarkbuildapi.apple;
+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;
@@ -37,7 +38,16 @@ public interface DottedVersionApi<SelfT extends DottedVersionApi<?>>
name = "compare_to",
doc =
"Compares based on most signifigant (first) not-matching version component. "
- + "So, for example, 1.2.3 < 1.2.4"
+ + "So, for example, 1.2.3 < 1.2.4",
+ parameters = {
+ @Param(
+ name = "other",
+ positional = true,
+ named = false,
+ type = DottedVersionApi.class,
+ doc = "The other dotted version."
+ )
+ }
)
public int compareTo_skylark(SelfT other);
}
diff --git a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/ObjcConfigurationApi.java b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/ObjcConfigurationApi.java
index ee5aef8ea2..35fe4b1e54 100644
--- a/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/ObjcConfigurationApi.java
+++ b/src/main/java/com/google/devtools/build/lib/skylarkbuildapi/apple/ObjcConfigurationApi.java
@@ -15,6 +15,7 @@
package com.google.devtools.build.lib.skylarkbuildapi.apple;
import com.google.common.collect.ImmutableList;
+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;
@@ -40,12 +41,32 @@ public interface ObjcConfigurationApi<ApplePlatformTypeApiT extends ApplePlatfor
@SkylarkCallable(
name = "simulator_device_for_platform_type",
- doc = "The type of device (e.g., 'iPhone 6' to simulate when running on the simulator.")
+ doc = "The type of device (e.g., 'iPhone 6' to simulate when running on the simulator.",
+ parameters = {
+ @Param(
+ name = "platform_type",
+ positional = true,
+ named = false,
+ type = ApplePlatformTypeApi.class,
+ doc = "The apple platform type."
+ ),
+ }
+ )
public String getSimulatorDeviceForPlatformType(ApplePlatformTypeApiT platformType);
@SkylarkCallable(
name = "simulator_version_for_platform_type",
- doc = "The SDK version of the simulator to use when running on the simulator.")
+ doc = "The SDK version of the simulator to use when running on the simulator.",
+ parameters = {
+ @Param(
+ name = "platform_type",
+ positional = true,
+ named = false,
+ type = ApplePlatformTypeApi.class,
+ doc = "The apple platform type."
+ ),
+ }
+ )
public DottedVersionApi<?> getSimulatorVersionForPlatformType(ApplePlatformTypeApiT platformType);
@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 0cc4f1e3ce..71ef2a125b 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
@@ -15,6 +15,7 @@
package com.google.devtools.build.lib.skylarkbuildapi.apple;
import com.google.devtools.build.lib.skylarkbuildapi.StructApi;
+import com.google.devtools.build.lib.skylarkinterface.Param;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
@@ -37,12 +38,31 @@ public interface XcodeConfigProviderApi<ApplePlatformApiT extends ApplePlatformA
@SkylarkCallable(
name = "minimum_os_for_platform_type",
doc = "The minimum compatible OS version for target simulator and devices for a particular "
- + "platform type.")
+ + "platform type.",
+ parameters = {
+ @Param(
+ name = "platform_type",
+ positional = true,
+ named = false,
+ type = ApplePlatformTypeApi.class,
+ doc = "The apple platform type."
+ ),
+ }
+ )
public DottedVersionApi<?> getMinimumOsForPlatformType(ApplePlatformTypeApiT platformType);
@SkylarkCallable(
name = "sdk_version_for_platform",
doc = "The version of the platform SDK that will be used to build targets for the given "
- + "platform.")
+ + "platform.",
+ parameters = {
+ @Param(
+ name = "platform",
+ positional = true,
+ named = false,
+ type = ApplePlatformApi.class,
+ doc = "The apple platform."
+ ),
+ })
public DottedVersionApi<?> getSdkVersionForPlatform(ApplePlatformApiT platform);
}