aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/packages/DependencyFilter.java
diff options
context:
space:
mode:
authorGravatar Michael Staib <mstaib@google.com>2017-02-13 21:25:25 +0000
committerGravatar Dmitry Lomov <dslomov@google.com>2017-02-14 14:21:53 +0000
commit57a8e6674e5bd5abc3a54a7771f09322f19413c7 (patch)
tree048d4aa8d1ff2ff54aeca4b3166ee48abf88cfa1 /src/main/java/com/google/devtools/build/lib/packages/DependencyFilter.java
parentb6d1123f2320bc60d1e620f00cade48d980d39ee (diff)
*** Reason for rollback *** Breaks Skylark aspects running over rules with LABEL_DICT_UNARY attributes. *** Original change description *** Refactoring: Types report what class of labels they contain. Currently label-type attributes are detected in many places across the codebase by simply reference-comparing against each of the label types. This CL aims to generalize most of these cases, moving the encoding of this logic into a single place (Type/BuildType itself). Not all of these cases can be made general without further refactoring, and some perhaps shouldn't be - serialization and Skylark rule context, for example, need to do... -- PiperOrigin-RevId: 147385072 MOS_MIGRATED_REVID=147385072
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/packages/DependencyFilter.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/packages/DependencyFilter.java8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/packages/DependencyFilter.java b/src/main/java/com/google/devtools/build/lib/packages/DependencyFilter.java
index 88fe6d4157..a5d41ee631 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/DependencyFilter.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/DependencyFilter.java
@@ -15,7 +15,6 @@ package com.google.devtools.build.lib.packages;
import com.google.devtools.build.lib.packages.Attribute.ConfigurationTransition;
import com.google.devtools.build.lib.packages.DependencyFilter.AttributeInfoProvider;
-import com.google.devtools.build.lib.syntax.Type.LabelClass;
import com.google.devtools.build.lib.util.BinaryPredicate;
/**
@@ -39,8 +38,8 @@ public abstract class DependencyFilter
new DependencyFilter() {
@Override
public boolean apply(AttributeInfoProvider infoProvider, Attribute attribute) {
- // getConfigurationTransition() is only defined for labels which introduce a dependency.
- if (attribute.getType().getLabelClass() != LabelClass.DEPENDENCY) {
+ // isHostConfiguration() is only defined for labels and label lists.
+ if (attribute.getType() != BuildType.LABEL && attribute.getType() != BuildType.LABEL_LIST) {
return true;
}
@@ -63,7 +62,8 @@ public abstract class DependencyFilter
new DependencyFilter() {
@Override
public boolean apply(AttributeInfoProvider infoProvider, Attribute attribute) {
- return attribute.getType().getLabelClass() != LabelClass.NONDEP_REFERENCE;
+ return attribute.getType() != BuildType.NODEP_LABEL
+ && attribute.getType() != BuildType.NODEP_LABEL_LIST;
}
};
/**