diff options
author | Christopher Vogt <github.com.nsp@cvogt.org> | 2012-01-20 00:30:11 +0100 |
---|---|---|
committer | Christopher Vogt <github.com.nsp@cvogt.org> | 2012-01-20 00:30:11 +0100 |
commit | beeac27cb480399eb787b47ef83906dd91935640 (patch) | |
tree | 8fff0930fdb93e1cd26993b93f335515c9088d2c /src | |
parent | 58cb15c40dc431e45eaa0a5278874d9996e42104 (diff) | |
download | scala-beeac27cb480399eb787b47ef83906dd91935640.tar.gz scala-beeac27cb480399eb787b47ef83906dd91935640.tar.bz2 scala-beeac27cb480399eb787b47ef83906dd91935640.zip |
Improved performance of TraversableLike.dropWhile, which now stops re-evaluating the predicate after it once evaluated to true.
Closes SI-5387.
Diffstat (limited to 'src')
-rw-r--r-- | src/library/scala/collection/TraversableLike.scala | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/library/scala/collection/TraversableLike.scala b/src/library/scala/collection/TraversableLike.scala index b4813e6341..36d45c0c8a 100644 --- a/src/library/scala/collection/TraversableLike.scala +++ b/src/library/scala/collection/TraversableLike.scala @@ -535,7 +535,7 @@ trait TraversableLike[+A, +Repr] extends HasNewBuilder[A, Repr] val b = newBuilder var go = false for (x <- this) { - if (!p(x)) go = true + if (!go && !p(x)) go = true if (go) b += x } b.result |