aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis
diff options
context:
space:
mode:
authorGravatar cparsons <cparsons@google.com>2018-05-25 12:27:10 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-05-25 12:28:54 -0700
commitc6cf1b94ea0753bb1cc7d0df8c5a8a2762a53eab (patch)
tree3483fb86f1c64cbc89557fc02d3ac14436969ff9 /src/main/java/com/google/devtools/build/lib/analysis
parent475d91a2b9314e6803aba5da83156712af63f837 (diff)
Migrate platform-related skylark objects to skylarkbuildapi
RELNOTES: None. PiperOrigin-RevId: 198086078
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/platform/BUILD1
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintSettingInfo.java17
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintValueInfo.java25
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/platform/PlatformInfo.java31
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java10
5 files changed, 15 insertions, 69 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/BUILD b/src/main/java/com/google/devtools/build/lib/analysis/platform/BUILD
index 01ecda876d..5c7362fd22 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/platform/BUILD
+++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/BUILD
@@ -25,6 +25,7 @@ java_library(
"//src/main/java/com/google/devtools/build/lib/concurrent",
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization",
"//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec",
+ "//src/main/java/com/google/devtools/build/lib/skylarkbuildapi/platform",
"//third_party:auto_value",
"//third_party:guava",
],
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintSettingInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintSettingInfo.java
index d2b5e1e83b..f048133440 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintSettingInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintSettingInfo.java
@@ -21,20 +21,13 @@ import com.google.devtools.build.lib.packages.NativeInfo;
import com.google.devtools.build.lib.packages.NativeProvider;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
-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.skylarkbuildapi.platform.ConstraintSettingInfoApi;
import com.google.devtools.build.lib.util.Fingerprint;
/** Provider for a platform constraint setting that is available to be fulfilled. */
-@SkylarkModule(
- name = "ConstraintSettingInfo",
- doc = "A specific constraint setting that may be used to define a platform.",
- category = SkylarkModuleCategory.PROVIDER
-)
@Immutable
@AutoCodec
-public class ConstraintSettingInfo extends NativeInfo {
+public class ConstraintSettingInfo extends NativeInfo implements ConstraintSettingInfoApi {
/** Name used in Skylark for accessing this provider. */
public static final String SKYLARK_NAME = "ConstraintSettingInfo";
@@ -51,11 +44,7 @@ public class ConstraintSettingInfo extends NativeInfo {
this.label = label;
}
- @SkylarkCallable(
- name = "label",
- doc = "The label of the target that created this constraint.",
- structField = true
- )
+ @Override
public Label label() {
return label;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintValueInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintValueInfo.java
index 345edb9dee..839acacfe0 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintValueInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/ConstraintValueInfo.java
@@ -21,20 +21,13 @@ import com.google.devtools.build.lib.packages.NativeInfo;
import com.google.devtools.build.lib.packages.NativeProvider;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
-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.skylarkbuildapi.platform.ConstraintValueInfoApi;
import com.google.devtools.build.lib.util.Fingerprint;
/** Provider for a platform constraint value that fulfills a {@link ConstraintSettingInfo}. */
-@SkylarkModule(
- name = "ConstraintValueInfo",
- doc = "A value for a constraint setting that can be used to define a platform.",
- category = SkylarkModuleCategory.PROVIDER
-)
@Immutable
@AutoCodec
-public class ConstraintValueInfo extends NativeInfo {
+public class ConstraintValueInfo extends NativeInfo implements ConstraintValueInfoApi {
/** Name used in Skylark for accessing this provider. */
public static final String SKYLARK_NAME = "ConstraintValueInfo";
@@ -55,22 +48,12 @@ public class ConstraintValueInfo extends NativeInfo {
this.label = label;
}
- @SkylarkCallable(
- name = "constraint",
- doc =
- "The <a href=\"ConstraintSettingInfo.html\">ConstraintSettingInfo</a> this value can be "
- + "applied to.",
- structField = true
- )
+ @Override
public ConstraintSettingInfo constraint() {
return constraint;
}
- @SkylarkCallable(
- name = "label",
- doc = "The label of the target that created this constraint value.",
- structField = true
- )
+ @Override
public Label label() {
return label;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/PlatformInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/PlatformInfo.java
index b5e232883d..3e9cf4976b 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/platform/PlatformInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/PlatformInfo.java
@@ -31,9 +31,7 @@ import com.google.devtools.build.lib.packages.NativeInfo;
import com.google.devtools.build.lib.packages.NativeProvider;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
-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.skylarkbuildapi.platform.PlatformInfoApi;
import com.google.devtools.build.lib.util.Fingerprint;
import java.util.ArrayList;
import java.util.Collection;
@@ -42,14 +40,9 @@ import java.util.Map;
import javax.annotation.Nullable;
/** Provider for a platform, which is a group of constraints and values. */
-@SkylarkModule(
- name = "PlatformInfo",
- doc = "Provides access to data about a specific platform.",
- category = SkylarkModuleCategory.PROVIDER
-)
@Immutable
@AutoCodec
-public class PlatformInfo extends NativeInfo {
+public class PlatformInfo extends NativeInfo implements PlatformInfoApi<ConstraintValueInfo> {
/** Name used in Skylark for accessing this provider. */
public static final String SKYLARK_NAME = "PlatformInfo";
@@ -90,22 +83,12 @@ public class PlatformInfo extends NativeInfo {
return new PlatformInfo(label, constraintsBuilder.build(), remoteExecutionProperties, location);
}
- @SkylarkCallable(
- name = "label",
- doc = "The label of the target that created this platform.",
- structField = true
- )
+ @Override
public Label label() {
return label;
}
- @SkylarkCallable(
- name = "constraints",
- doc =
- "The <a href=\"ConstraintValueInfo.html\">ConstraintValueInfo</a> instances that define "
- + "this platform.",
- structField = true
- )
+ @Override
public Iterable<ConstraintValueInfo> constraints() {
return constraints.values().asList();
}
@@ -119,11 +102,7 @@ public class PlatformInfo extends NativeInfo {
return constraints.get(constraint);
}
- @SkylarkCallable(
- name = "remoteExecutionProperties",
- doc = "Properties that are available for the use of remote execution.",
- structField = true
- )
+ @Override
public String remoteExecutionProperties() {
return remoteExecutionProperties;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java
index 7cd3739967..549290a145 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java
@@ -21,8 +21,7 @@ import com.google.devtools.build.lib.events.Location;
import com.google.devtools.build.lib.packages.NativeInfo;
import com.google.devtools.build.lib.packages.NativeProvider;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
-import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
-import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
+import com.google.devtools.build.lib.skylarkbuildapi.platform.ToolchainInfoApi;
import com.google.devtools.build.lib.syntax.Environment;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.FunctionSignature;
@@ -34,14 +33,9 @@ import java.util.Map;
* A provider that supplied information about a specific language toolchain, including what platform
* constraints are required for execution and for the target platform.
*/
-@SkylarkModule(
- name = "ToolchainInfo",
- doc = "Provides access to data about a specific toolchain.",
- category = SkylarkModuleCategory.PROVIDER
-)
@AutoCodec
@Immutable
-public class ToolchainInfo extends NativeInfo {
+public class ToolchainInfo extends NativeInfo implements ToolchainInfoApi {
/** Name used in Skylark for accessing this provider. */
public static final String SKYLARK_NAME = "ToolchainInfo";