From 4305d94f5e01ad7fb6efc119fd0d426adb1cceef Mon Sep 17 00:00:00 2001 From: Mark Harrah Date: Fri, 29 Jul 2011 23:33:10 -0400 Subject: [PATCH] add convenience methods for filtering settings and keys --- main/Defaults.scala | 3 +++ 1 file changed, 3 insertions(+) diff --git a/main/Defaults.scala b/main/Defaults.scala index e03267d1e..0cdfd519b 100644 --- a/main/Defaults.scala +++ b/main/Defaults.scala @@ -1031,6 +1031,9 @@ trait BuildExtra extends BuildCommon /** Disables post-compilation hook for determining tests for tab-completion (such as for 'test-only'). * This is useful for reducing test:compile time when not running test. */ def noTestCompletion(config: Configuration = Test): Setting[_] = inConfig(config)( Seq(definedTests <<= Defaults.detectTests) ).head + + def filterKeys(ss: Seq[Setting[_]], transitive: Boolean = false)(f: ScopedKey[_] => Boolean): Seq[Setting[_]] = + ss filter ( s => f(s.key) && (!transitive || s.dependsOn.forall(f)) ) } trait BuildCommon {