aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchSplitTransitionProvider.java
diff options
context:
space:
mode:
authorGravatar cparsons <cparsons@google.com>2017-11-01 11:34:43 -0400
committerGravatar John Cater <jcater@google.com>2017-11-02 10:04:01 -0400
commit4ad39f1301f29b1024e6c970765ab9721cac8be0 (patch)
tree8b1753b1dedb62c2739eacd13c58dbd004d17917 /src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchSplitTransitionProvider.java
parent64878508ca2e8c104e281e885890359b18899c80 (diff)
Expose Apple Multi-architecture Split Transition to Skylark.
This omits validation for this transition, which will follow in a future change. RELNOTES: None. PiperOrigin-RevId: 174183651
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchSplitTransitionProvider.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchSplitTransitionProvider.java14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchSplitTransitionProvider.java b/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchSplitTransitionProvider.java
index 7d0e9af46f..394c2202b7 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchSplitTransitionProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchSplitTransitionProvider.java
@@ -35,6 +35,8 @@ import com.google.devtools.build.lib.rules.apple.ApplePlatform;
import com.google.devtools.build.lib.rules.apple.ApplePlatform.PlatformType;
import com.google.devtools.build.lib.rules.apple.DottedVersion;
import com.google.devtools.build.lib.rules.objc.ObjcRuleClasses.PlatformRule;
+import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
+import com.google.devtools.build.lib.skylarkinterface.SkylarkValue;
import java.util.List;
import java.util.stream.Collectors;
@@ -42,7 +44,7 @@ import java.util.stream.Collectors;
* {@link SplitTransitionProvider} implementation for multi-architecture apple rules which can
* accept different apple platform types (such as ios or watchos).
*/
-public class MultiArchSplitTransitionProvider implements SplitTransitionProvider {
+public class MultiArchSplitTransitionProvider implements SplitTransitionProvider, SkylarkValue {
@VisibleForTesting
static final String UNSUPPORTED_PLATFORM_TYPE_ERROR_FORMAT =
@@ -147,6 +149,16 @@ public class MultiArchSplitTransitionProvider implements SplitTransitionProvider
return new AppleBinaryTransition(platformType, minimumOsVersion);
}
+ @Override
+ public boolean isImmutable() {
+ return true;
+ }
+
+ @Override
+ public void repr(SkylarkPrinter printer) {
+ printer.append("apple_common.multi_arch_split");
+ }
+
/**
* Transition that results in one configured target per architecture specified in the
* platform-specific cpu flag for a particular platform type (for example, --watchos_cpus