aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools
diff options
context:
space:
mode:
authorGravatar Ulf Adams <ulfjack@google.com>2016-10-18 12:51:15 +0000
committerGravatar Philipp Wollermann <philwo@google.com>2016-10-19 08:24:39 +0000
commite3b4af2c9aaba4848c92d358c286f106feaf384f (patch)
tree112b9e4319ecdda68539090b6f41fc9ba696275b /src/main/java/com/google/devtools
parenta9f20b0d6459d395444c45cf5e94a899f3443633 (diff)
Move the RuleModule interface to ConfiguredRCP and rename it to RuleSet.
-- MOS_MIGRATED_REVID=136463385
Diffstat (limited to 'src/main/java/com/google/devtools')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java12
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java105
2 files changed, 58 insertions, 59 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java
index 5f1d5e90be..27733485ab 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java
@@ -179,8 +179,18 @@ public class ConfiguredRuleClassProvider implements RuleClassProvider {
}
/**
- * Builder for {@link ConfiguredRuleClassProvider}.
+ * A coherent set of options, fragments, aspects and rules; each of these may declare a dependency
+ * on other such sets.
*/
+ public static interface RuleSet {
+ /** Add stuff to the configured rule class provider builder. */
+ void init(ConfiguredRuleClassProvider.Builder builder);
+
+ /** List of required modules. */
+ ImmutableList<RuleSet> requires();
+ }
+
+ /** Builder for {@link ConfiguredRuleClassProvider}. */
public static class Builder implements RuleDefinitionEnvironment {
private final StringBuilder defaultWorkspaceFilePrefix = new StringBuilder();
private final StringBuilder defaultWorkspaceFileSuffix = new StringBuilder();
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java
index 44d194dedd..baafa05bb3 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java
@@ -23,6 +23,7 @@ import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider;
import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider.Builder;
import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider.DeprecationValidator;
import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider.PrerequisiteValidator;
+import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider.RuleSet;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
@@ -164,18 +165,6 @@ import java.io.IOException;
public class BazelRuleClassProvider {
public static final String TOOLS_REPOSITORY = "@bazel_tools";
- /**
- * A coherent set of options, fragments, aspects and rules; each of these may declare a dependency
- * on other such sets.
- */
- public static interface RuleModule {
- /** Add stuff to the configured rule class provider builder. */
- void init(ConfiguredRuleClassProvider.Builder builder);
-
- /** List of required modules. */
- ImmutableList<RuleModule> requires();
- }
-
/** Used by the build encyclopedia generator. */
public static ConfiguredRuleClassProvider create() {
ConfiguredRuleClassProvider.Builder builder =
@@ -282,8 +271,8 @@ public class BazelRuleClassProvider {
VARIOUS_WORKSPACE_RULES.init(builder);
}
- public static final RuleModule BAZEL_SETUP =
- new RuleModule() {
+ public static final RuleSet BAZEL_SETUP =
+ new RuleSet() {
@Override
public void init(Builder builder) {
builder
@@ -298,13 +287,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of();
}
};
- public static final RuleModule CORE_RULES =
- new RuleModule() {
+ public static final RuleSet CORE_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
builder.addRuleDefinition(new BaseRuleClasses.BaseRule());
@@ -315,13 +304,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of();
}
};
- public static final RuleModule BASIC_RULES =
- new RuleModule() {
+ public static final RuleSet BASIC_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
builder.addRuleDefinition(new EnvironmentRule());
@@ -344,13 +333,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES);
}
};
- public static final RuleModule CORE_WORKSPACE_RULES =
- new RuleModule() {
+ public static final RuleSet CORE_WORKSPACE_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
builder.addRuleDefinition(new BindRule());
@@ -359,13 +348,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES);
}
};
- public static final RuleModule PROTO_RULES =
- new RuleModule() {
+ public static final RuleSet PROTO_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
builder.addConfigurationOptions(ProtoConfiguration.Options.class);
@@ -374,13 +363,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES);
}
};
- public static final RuleModule SH_RULES =
- new RuleModule() {
+ public static final RuleSet SH_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
builder.addRuleDefinition(new BazelShRuleClasses.ShRule());
@@ -390,13 +379,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES);
}
};
- public static final RuleModule CPP_RULES =
- new RuleModule() {
+ public static final RuleSet CPP_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
builder.addConfig(
@@ -420,13 +409,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES);
}
};
- public static final RuleModule JAVA_RULES =
- new RuleModule() {
+ public static final RuleSet JAVA_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
builder.addConfigurationOptions(JavaOptions.class);
@@ -460,13 +449,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES, CPP_RULES);
}
};
- public static final RuleModule JAVA_PROTO_RULES =
- new RuleModule() {
+ public static final RuleSet JAVA_PROTO_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
BazelJavaProtoAspect bazelJavaProtoAspect = new BazelJavaProtoAspect();
@@ -478,13 +467,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES, JAVA_RULES);
}
};
- public static final RuleModule ANDROID_RULES =
- new RuleModule() {
+ public static final RuleSet ANDROID_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
String toolsRepository = checkNotNull(builder.getToolsRepository());
@@ -524,13 +513,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES, CPP_RULES, JAVA_RULES);
}
};
- public static final RuleModule PYTHON_RULES =
- new RuleModule() {
+ public static final RuleSet PYTHON_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
builder.addConfig(PythonOptions.class, new PythonConfigurationLoader());
@@ -545,13 +534,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES, CPP_RULES);
}
};
- public static final RuleModule OBJC_RULES =
- new RuleModule() {
+ public static final RuleSet OBJC_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
String toolsRepository = checkNotNull(builder.getToolsRepository());
@@ -566,7 +555,7 @@ public class BazelRuleClassProvider {
// j2objc shouldn't be here!
builder.addConfig(J2ObjcCommandLineOptions.class, new J2ObjcConfiguration.Loader());
- // objc_proto_library should go into a separate RuleModule!
+ // objc_proto_library should go into a separate RuleSet!
// TODO(ulfjack): Depending on objcProtoAspect from here is a layering violation.
ObjcProtoAspect objcProtoAspect = new ObjcProtoAspect();
builder.addNativeAspectClass(objcProtoAspect);
@@ -620,13 +609,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES, CPP_RULES);
}
};
- public static final RuleModule J2OBJC_RULES =
- new RuleModule() {
+ public static final RuleSet J2OBJC_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
String toolsRepository = checkNotNull(builder.getToolsRepository());
@@ -650,13 +639,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES, CPP_RULES, JAVA_RULES, OBJC_RULES);
}
};
- public static final RuleModule ANDROID_STUDIO_ASPECT =
- new RuleModule() {
+ public static final RuleSet ANDROID_STUDIO_ASPECT =
+ new RuleSet() {
@Override
public void init(Builder builder) {
String toolsRepository = checkNotNull(builder.getToolsRepository());
@@ -666,13 +655,13 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES);
}
};
- public static final RuleModule VARIOUS_WORKSPACE_RULES =
- new RuleModule() {
+ public static final RuleSet VARIOUS_WORKSPACE_RULES =
+ new RuleSet() {
@Override
public void init(Builder builder) {
// TODO(ulfjack): Split this up by conceptual units.
@@ -690,7 +679,7 @@ public class BazelRuleClassProvider {
}
@Override
- public ImmutableList<RuleModule> requires() {
+ public ImmutableList<RuleSet> requires() {
return ImmutableList.of(CORE_RULES, CORE_WORKSPACE_RULES);
}
};