aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/query2/engine
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/query2/engine')
-rw-r--r--src/main/java/com/google/devtools/build/lib/query2/engine/BuildFilesFunction.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/query2/engine/LoadFilesFunction.java5
2 files changed, 6 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/query2/engine/BuildFilesFunction.java b/src/main/java/com/google/devtools/build/lib/query2/engine/BuildFilesFunction.java
index 0e65cbdf05..d2a2eb0fa8 100644
--- a/src/main/java/com/google/devtools/build/lib/query2/engine/BuildFilesFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/query2/engine/BuildFilesFunction.java
@@ -49,6 +49,7 @@ class BuildFilesFunction implements QueryFunction {
List<Argument> args,
final Callback<T> callback)
throws QueryException, InterruptedException {
+ final Uniquifier<T> uniquifier = env.createUniquifier();
env.eval(
args.get(0).getExpression(),
context,
@@ -58,9 +59,9 @@ class BuildFilesFunction implements QueryFunction {
throws QueryException, InterruptedException {
Set<T> result = CompactHashSet.create();
Iterables.addAll(result, partialResult);
- callback.process(
+ callback.process(uniquifier.unique(
env.getBuildFiles(
- expression, result, /* BUILD */ true, /* subinclude */ true, /* load */ true));
+ expression, result, /* BUILD */ true, /* subinclude */ true, /* load */ true)));
}
});
}
diff --git a/src/main/java/com/google/devtools/build/lib/query2/engine/LoadFilesFunction.java b/src/main/java/com/google/devtools/build/lib/query2/engine/LoadFilesFunction.java
index 6b42ba4f37..311a6afff5 100644
--- a/src/main/java/com/google/devtools/build/lib/query2/engine/LoadFilesFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/query2/engine/LoadFilesFunction.java
@@ -45,6 +45,7 @@ class LoadFilesFunction implements QueryEnvironment.QueryFunction {
List<QueryEnvironment.Argument> args,
final Callback<T> callback)
throws QueryException, InterruptedException {
+ final Uniquifier<T> uniquifier = env.createUniquifier();
env.eval(
args.get(0).getExpression(),
context,
@@ -54,13 +55,13 @@ class LoadFilesFunction implements QueryEnvironment.QueryFunction {
throws QueryException, InterruptedException {
Set<T> result = CompactHashSet.create();
Iterables.addAll(result, partialResult);
- callback.process(
+ callback.process(uniquifier.unique(
env.getBuildFiles(
expression,
result,
/* BUILD */ false,
/* subinclude */ false,
- /* load */ true));
+ /* load */ true)));
}
});
}