@@ -22,11 +22,14 @@ class CompletenessTest extends JUnitSuite {
22
22
" You can use `fold` instead to accumulate `sum` and `numberOfElements` and divide at the end.]"
23
23
24
24
val commentForFirstWithPredicate = " [use `.filter(condition).first`]"
25
+
26
+ val fromFuture = " [TODO: Decide how Scala Futures should relate to Observables. Should there be a " +
27
+ " common base interface for Future and Observable? And should Futures also have an unsubscribe method?]"
25
28
26
29
val correspondence = defaultMethodCorrespondence ++ Map (
27
30
// manually added entries for Java instance methods
28
31
" aggregate(Func2[T, T, T])" -> " reduce((U, U) => U)" ,
29
- " aggregate(R, Func2[R, _ >: T, R])" -> " fold (R)((R, T) => R)" ,
32
+ " aggregate(R, Func2[R, _ >: T, R])" -> " foldLeft (R)((R, T) => R)" ,
30
33
" all(Func1[_ >: T, Boolean])" -> " forall(T => Boolean)" ,
31
34
" buffer(Long, Long, TimeUnit)" -> " buffer(Duration, Duration)" ,
32
35
" buffer(Long, Long, TimeUnit, Scheduler)" -> " buffer(Duration, Duration, Scheduler)" ,
@@ -47,7 +50,7 @@ class CompletenessTest extends JUnitSuite {
47
50
" parallel(Func1[Observable[T], Observable[R]])" -> " parallel(Observable[T] => Observable[R])" ,
48
51
" parallel(Func1[Observable[T], Observable[R]], Scheduler)" -> " parallel(Observable[T] => Observable[R], Scheduler)" ,
49
52
" reduce(Func2[T, T, T])" -> " reduce((U, U) => U)" ,
50
- " reduce(R, Func2[R, _ >: T, R])" -> " fold (R)((R, T) => R)" ,
53
+ " reduce(R, Func2[R, _ >: T, R])" -> " foldLeft (R)((R, T) => R)" ,
51
54
" scan(Func2[T, T, T])" -> unnecessary,
52
55
" scan(R, Func2[R, _ >: T, R])" -> " scan(R)((R, T) => R)" ,
53
56
" skip(Int)" -> " drop(Int)" ,
@@ -57,6 +60,7 @@ class CompletenessTest extends JUnitSuite {
57
60
" takeFirst()" -> " first" ,
58
61
" takeFirst(Func1[_ >: T, Boolean])" -> commentForFirstWithPredicate,
59
62
" takeLast(Int)" -> " takeRight(Int)" ,
63
+ " takeWhileWithIndex(Func2[_ >: T, _ >: Integer, Boolean])" -> " [use `.zipWithIndex.takeWhile{case (elem, index) => condition}.map(_._1)`]" ,
60
64
" toList()" -> " toSeq" ,
61
65
" toSortedList()" -> " [Sorting is already done in Scala's collection library, use `.toSeq.map(_.sorted)`]" ,
62
66
" toSortedList(Func2[_ >: T, _ >: T, Integer])" -> " [Sorting is already done in Scala's collection library, use `.toSeq.map(_.sortWith(f))`]" ,
@@ -77,9 +81,10 @@ class CompletenessTest extends JUnitSuite {
77
81
" error(Throwable)" -> " apply(Throwable)" ,
78
82
" from(Array[T])" -> " apply(T*)" ,
79
83
" from(Iterable[_ <: T])" -> " apply(T*)" ,
80
- " from(Future[_ <: T])" -> " apply(Future[T])" ,
81
- " from(Future[_ <: T], Long, TimeUnit)" -> " apply(Future[T], Duration)" ,
82
- " from(Future[_ <: T], Scheduler)" -> " apply(Future[T], Scheduler)" ,
84
+ " from(Future[_ <: T])" -> fromFuture,
85
+ " from(Future[_ <: T], Long, TimeUnit)" -> fromFuture,
86
+ " from(Future[_ <: T], Scheduler)" -> fromFuture,
87
+ " just(T)" -> " apply(T*)" ,
83
88
" merge(Observable[_ <: T], Observable[_ <: T])" -> " merge(Observable[U])" ,
84
89
" merge(Observable[_ <: Observable[_ <: T]])" -> " flatten(<:<[Observable[T], Observable[Observable[U]]])" ,
85
90
" mergeDelayError(Observable[_ <: T], Observable[_ <: T])" -> " mergeDelayError(Observable[U])" ,
@@ -298,7 +303,7 @@ class CompletenessTest extends JUnitSuite {
298
303
(if (p._1.startsWith(" average" )) " average" else p._1.takeWhile(_ != '(' ), p._2)
299
304
def formatJavaCol (name : String , alternatives : Iterable [String ]): String = {
300
305
alternatives.toList.sorted.map(scalaToJavaSignature(_)).map(s => {
301
- if (s.length > 50 ) {
306
+ if (s.length > 64 ) {
302
307
val toolTip = escapeJava(s)
303
308
" <span title=\" " + toolTip + " \" ><code>" + name + " (...)</code></span>"
304
309
} else {
0 commit comments