From ea6b99e7263b93d8a53d0659a2f43fd7928173a2 Mon Sep 17 00:00:00 2001 From: Asger Feldthaus Date: Fri, 26 Jun 2020 13:04:54 +0100 Subject: [PATCH] JS: Add shouldExtract predicate --- .../extractor/src/com/semmle/js/extractor/AutoBuild.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/javascript/extractor/src/com/semmle/js/extractor/AutoBuild.java b/javascript/extractor/src/com/semmle/js/extractor/AutoBuild.java index 007674188dd..4a93b39c088 100644 --- a/javascript/extractor/src/com/semmle/js/extractor/AutoBuild.java +++ b/javascript/extractor/src/com/semmle/js/extractor/AutoBuild.java @@ -29,6 +29,7 @@ import java.util.Set; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; +import java.util.function.Predicate; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -609,7 +610,8 @@ public class AutoBuild { // extract remaining files extractFiles( - filesToExtract, extractedFiles, defaultExtractor, customExtractors, hasTypeScriptFiles); + filesToExtract, extractedFiles, defaultExtractor, customExtractors, + f -> !(hasTypeScriptFiles && isFileDerivedFromTypeScriptFile(f, extractedFiles))); } private void extractFiles( @@ -617,12 +619,12 @@ public class AutoBuild { Set extractedFiles, FileExtractor defaultExtractor, Map customExtractors, - boolean hasTypeScriptFiles) { + Predicate shouldExtract) { for (Path f : filesToExtract) { if (extractedFiles.contains(f)) continue; - if (hasTypeScriptFiles && isFileDerivedFromTypeScriptFile(f, extractedFiles)) { + if (!shouldExtract.test(f)) { continue; } extractedFiles.add(f);