aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java35
1 files changed, 21 insertions, 14 deletions
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 dfe934a344..4a2081c7a6 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
@@ -25,12 +25,12 @@ import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Iterables;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.analysis.TransitiveInfoProvider;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.collect.nestedset.Order;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.packages.NativeClassObjectConstructor;
+import com.google.devtools.build.lib.packages.NativeClassObjectConstructor.WithLegacySkylarkName;
import com.google.devtools.build.lib.packages.SkylarkClassObject;
import com.google.devtools.build.lib.rules.cpp.CcLinkParamsProvider;
import com.google.devtools.build.lib.rules.cpp.CppModuleMap;
@@ -55,17 +55,11 @@ import java.util.Map;
category = SkylarkModuleCategory.PROVIDER,
doc = "A provider for compilation and linking of objc."
)
-public final class ObjcProvider extends SkylarkClassObject
- implements TransitiveInfoProvider, TransitiveInfoProvider.WithLegacySkylarkName {
+public final class ObjcProvider extends SkylarkClassObject {
/** Skylark name for the ObjcProvider. */
public static final String SKYLARK_NAME = "objc";
- @Override
- public String getSkylarkName() {
- return SKYLARK_NAME;
- }
-
/**
* Represents one of the things this provider can provide transitively. Things are provided as
* {@link NestedSet}s of type E.
@@ -506,12 +500,7 @@ public final class ObjcProvider extends SkylarkClassObject
/** Skylark constructor and identifier for ObjcProvider. */
public static final NativeClassObjectConstructor<ObjcProvider> SKYLARK_CONSTRUCTOR =
- new NativeClassObjectConstructor<ObjcProvider>(ObjcProvider.class, SKYLARK_NAME) {
- @Override
- public String getErrorMessageFormatForInstances() {
- return "ObjcProvider field %s could not be instantiated";
- }
- };
+ new Constructor();
private ObjcProvider(
ImmutableMap<Key<?>, NestedSet<?>> items,
@@ -998,4 +987,22 @@ public final class ObjcProvider extends SkylarkClassObject
return new ObjcProvider(propagated, nonPropagated, strictDependency, skylarkFields.build());
}
}
+
+ private static class Constructor
+ extends NativeClassObjectConstructor<ObjcProvider>
+ implements WithLegacySkylarkName {
+ public Constructor() {
+ super(ObjcProvider.class, ObjcProvider.SKYLARK_NAME);
+ }
+
+ @Override
+ public String getSkylarkName() {
+ return SKYLARK_NAME;
+ }
+
+ @Override
+ public String getErrorMessageFormatForInstances() {
+ return "ObjcProvider field %s could not be instantiated";
+ }
+ }
}