aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules
diff options
context:
space:
mode:
authorGravatar lpino <lpino@google.com>2017-12-06 06:03:03 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-12-06 06:06:29 -0800
commit21aa1024c5f5302d998457b1538c864c233bf460 (patch)
tree955e80c7766992fd28bb9d728e8cb88cc1942c9b /src/main/java/com/google/devtools/build/lib/rules
parent31320246a1d428c0b56f78b98013961c68ed322d (diff)
Move BazelRuleClassProvider.CORE_WORKSPACE_RULES to its own class in the rules/repository package.
PiperOrigin-RevId: 178087895
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/repository/CoreWorkspaceRules.java42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/repository/CoreWorkspaceRules.java b/src/main/java/com/google/devtools/build/lib/rules/repository/CoreWorkspaceRules.java
new file mode 100644
index 0000000000..386c64a52c
--- /dev/null
+++ b/src/main/java/com/google/devtools/build/lib/rules/repository/CoreWorkspaceRules.java
@@ -0,0 +1,42 @@
+// Copyright 2017 The Bazel Authors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+package com.google.devtools.build.lib.rules.repository;
+
+import com.google.common.collect.ImmutableList;
+import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider.Builder;
+import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider.RuleSet;
+import com.google.devtools.build.lib.rules.core.CoreRules;
+
+/**
+ * Basic rules for WORKSPACE files.
+ */
+public final class CoreWorkspaceRules implements RuleSet {
+ public static final CoreWorkspaceRules INSTANCE = new CoreWorkspaceRules();
+
+ private CoreWorkspaceRules() {
+ // Use the static INSTANCE field instead.
+ }
+
+ @Override
+ public void init(Builder builder) {
+ builder.addRuleDefinition(new BindRule());
+ builder.addRuleDefinition(new WorkspaceBaseRule());
+ builder.addRuleDefinition(new LocalRepositoryRule());
+ }
+
+ @Override
+ public ImmutableList<RuleSet> requires() {
+ return ImmutableList.of(CoreRules.INSTANCE);
+ }
+}