diff options
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules')
3 files changed, 10 insertions, 40 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationContext.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationContext.java index 6df4ff1a8f..15b5dc79d1 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationContext.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationContext.java @@ -30,8 +30,7 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.rules.cpp.CppHelper.PregreppedHeader; 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.SkylarkModule; -import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; +import com.google.devtools.build.lib.skylarkbuildapi.cpp.CcCompilationContextApi; import com.google.devtools.build.lib.vfs.PathFragment; import java.util.ArrayList; import java.util.Collection; @@ -47,16 +46,8 @@ import javax.annotation.Nullable; */ @Immutable @AutoCodec -@SkylarkModule( - name = "cc_compilation_context", - documented = false, - category = SkylarkModuleCategory.PROVIDER, - doc = - "Immutable store of information needed for C++ compilation that is aggregated across " - + "dependencies." -) // TODO(b/77669139): Rename to CcCompilationContext. -public final class CcCompilationContext { +public final class CcCompilationContext implements CcCompilationContextApi { /** An empty {@code CcCompilationContext}. */ public static final CcCompilationContext EMPTY = new Builder(null).build(); diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationHelper.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationHelper.java index b64778d76d..d03dda0348 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationHelper.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationHelper.java @@ -50,9 +50,7 @@ import com.google.devtools.build.lib.rules.cpp.CcCommon.CoptsFilter; import com.google.devtools.build.lib.rules.cpp.CcToolchainFeatures.FeatureConfiguration; import com.google.devtools.build.lib.rules.cpp.CcToolchainVariables.VariablesExtension; import com.google.devtools.build.lib.rules.cpp.CppConfiguration.HeadersCheckingMode; -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.cpp.CompilationInfoApi; import com.google.devtools.build.lib.syntax.SkylarkNestedSet; import com.google.devtools.build.lib.syntax.Type; import com.google.devtools.build.lib.util.FileTypeSet; @@ -139,16 +137,10 @@ public final class CcCompilationHelper { * Contains the providers as well as the {@code CcCompilationOutputs} and the {@code * CcCompilationContext}. */ - @SkylarkModule( - name = "compilation_info", - documented = false, - category = SkylarkModuleCategory.BUILTIN, - doc = "Helper class containing CC compilation providers." - ) // TODO(plf): Rename so that it's not confused with CcCompilationContext and also consider // merging // this class with {@code CcCompilationOutputs}. - public static final class CompilationInfo { + public static final class CompilationInfo implements CompilationInfoApi { private final TransitiveInfoProviderMap providers; private final Map<String, NestedSet<Artifact>> outputGroups; private final CcCompilationOutputs compilationOutputs; @@ -170,7 +162,7 @@ public final class CcCompilationHelper { return outputGroups; } - @SkylarkCallable(name = "cc_output_groups", documented = false) + @Override public Map<String, SkylarkNestedSet> getSkylarkOutputGroups() { Map<String, SkylarkNestedSet> skylarkOutputGroups = new TreeMap<>(); for (Map.Entry<String, NestedSet<Artifact>> entry : outputGroups.entrySet()) { @@ -180,12 +172,12 @@ public final class CcCompilationHelper { return skylarkOutputGroups; } - @SkylarkCallable(name = "cc_compilation_outputs", documented = false) + @Override public CcCompilationOutputs getCcCompilationOutputs() { return compilationOutputs; } - @SkylarkCallable(name = "cc_compilation_info", documented = false) + @Override public CcCompilationInfo getCcCompilationInfo() { return (CcCompilationInfo) providers.getProvider(CcCompilationInfo.PROVIDER.getKey()); } diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationInfo.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationInfo.java index 6879ee5341..98d596338a 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationInfo.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationInfo.java @@ -24,20 +24,12 @@ 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.cpp.CcCompilationInfoApi; /** Wrapper for every C++ compilation provider. */ @Immutable @AutoCodec -@SkylarkModule( - name = "cc_compilation_info", - documented = false, - category = SkylarkModuleCategory.PROVIDER, - doc = "Wrapper for every C++ compilation provider" -) -public final class CcCompilationInfo extends NativeInfo { +public final class CcCompilationInfo extends NativeInfo implements CcCompilationInfoApi { public static final NativeProvider<CcCompilationInfo> PROVIDER = new NativeProvider<CcCompilationInfo>(CcCompilationInfo.class, "CcCompilationInfo") {}; @@ -50,12 +42,7 @@ public final class CcCompilationInfo extends NativeInfo { this.ccCompilationContext = ccCompilationContext; } - @SkylarkCallable( - name = "cc_compilation_context", - structField = true, - allowReturnNones = true, - doc = "Returns compilation information for this C++ target." - ) + @Override public CcCompilationContext getCcCompilationContext() { return ccCompilationContext; } |