File tree Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -53,10 +53,13 @@ object CollectionStrawMan1 {
53
53
def indexWhere (p : A => Boolean ): Int = iterator.indexWhere(p)
54
54
def isEmpty : Boolean = ! iterator.hasNext
55
55
def head : A = iterator.next
56
- def view : View [A ] = iterator _
57
56
def collectAs [C [X ] <: Iterable [X ]](fi : FromIterator [C ]): C [A ] = fi.fromIterator(iterator)
58
57
}
59
58
59
+ trait Viewable [A ] extends Any {
60
+ def view : View [A ]
61
+ }
62
+
60
63
/** Transforms returning same collection type */
61
64
trait MonoTransforms [A , Repr ] extends Any {
62
65
protected def iter : Iterator [A ]
@@ -89,6 +92,11 @@ object CollectionStrawMan1 {
89
92
def iterator = c.iterator
90
93
}
91
94
95
+ implicit class IterableIsViewable [A ](val c : Iterable [A ]) extends Viewable [A ]{
96
+ def iterator : Iterator [A ] = c.iterator
97
+ def view : View [A ] = iterator _
98
+ }
99
+
92
100
/** Implementation of MonoTransforms for all generic collections */
93
101
implicit class IterableMonoTransforms [A , C [X ] <: Iterable [X ]](val c : Iterable [A ] with FromIterator [C ])
94
102
extends AnyVal with MonoTransforms [A , C [A ]] {
You can’t perform that action at this time.
0 commit comments