aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/main/java/com/google/devtools/build/lib/pkgcache/SrcTargetUtil.java27
1 files changed, 19 insertions, 8 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/pkgcache/SrcTargetUtil.java b/src/main/java/com/google/devtools/build/lib/pkgcache/SrcTargetUtil.java
index b8f4b3e11a..f2d2cb8e61 100644
--- a/src/main/java/com/google/devtools/build/lib/pkgcache/SrcTargetUtil.java
+++ b/src/main/java/com/google/devtools/build/lib/pkgcache/SrcTargetUtil.java
@@ -66,10 +66,12 @@ public final class SrcTargetUtil {
private static final ImmutableSet<String> SOURCE_ATTRIBUTES =
ImmutableSet.of("srcs", "src", "srcjar");
- // Attributes referring to "headers".
- private static final ImmutableSet<String> HEADER_ATTRIBUTES =
- ImmutableSet.of("hdrs", "textual_hdrs");
-
+ // Attribute referring to "headers".
+ private static final String HEADER_ATTRIBUTE = "hdrs";
+
+ // Attribute referring to "textual headers".
+ private static final String TEXTUAL_HEADER_ATTRIBUTE = "textual_hdrs";
+
// The attribute to search in filegroups.
private static final ImmutableSet<String> FILEGROUP_ATTRIBUTES =
ImmutableSet.of("srcs");
@@ -84,7 +86,8 @@ public final class SrcTargetUtil {
throws NoSuchTargetException, NoSuchPackageException, InterruptedException {
ImmutableSet<String> srcAndHdrAttributes = ImmutableSet.<String>builder()
.addAll(SOURCE_ATTRIBUTES)
- .addAll(HEADER_ATTRIBUTES)
+ .add(HEADER_ATTRIBUTE)
+ .add(TEXTUAL_HEADER_ATTRIBUTE)
.build();
return getTargets(eventHandler, rule, srcAndHdrAttributes, Sets.newHashSet(rule), provider);
}
@@ -93,10 +96,18 @@ public final class SrcTargetUtil {
public static List<FileTarget> getHdrTargets(EventHandler eventHandler, Rule rule,
TargetProvider provider)
throws NoSuchTargetException, NoSuchPackageException, InterruptedException {
- ImmutableSet<String> srcAndHdrAttributes = ImmutableSet.copyOf(HEADER_ATTRIBUTES);
- return getTargets(eventHandler, rule, srcAndHdrAttributes, Sets.newHashSet(rule), provider);
+ return getTargets(
+ eventHandler, rule, ImmutableSet.of(HEADER_ATTRIBUTE), Sets.newHashSet(rule), provider);
+ }
+
+ @ThreadSafety.ThreadSafe
+ public static List<FileTarget> getTextualHdrTargets(
+ EventHandler eventHandler, Rule rule, TargetProvider provider)
+ throws NoSuchTargetException, NoSuchPackageException, InterruptedException {
+ return getTargets(eventHandler, rule, ImmutableSet.of(TEXTUAL_HEADER_ATTRIBUTE),
+ Sets.newHashSet(rule), provider);
}
-
+
/**
* @see #getSrcTargets(EventHandler, Rule, TargetProvider)
*/