@@ -47,7 +47,7 @@ object NonEmptyLazyList extends NonEmptyLazyListInstances {
47
47
s.asInstanceOf [LazyList [A ]]
48
48
49
49
def fromLazyList [A ](as : LazyList [A ]): Option [NonEmptyLazyList [A ]] =
50
- if (as.nonEmpty) Option (create(as)) else None
50
+ if (as.nonEmpty) Some (create(as)) else None
51
51
52
52
def fromLazyListUnsafe [A ](ll : LazyList [A ]): NonEmptyLazyList [A ] =
53
53
if (ll.nonEmpty) create(ll)
@@ -69,7 +69,7 @@ object NonEmptyLazyList extends NonEmptyLazyListInstances {
69
69
create(ca :+ a)
70
70
71
71
def apply [A ](a : => A , as : A * ): NonEmptyLazyList [A ] =
72
- create(LazyList .concat( LazyList (a), LazyList .from(as) ))
72
+ create(a #:: LazyList .from(as))
73
73
74
74
implicit def catsNonEmptyLazyListOps [A ](value : NonEmptyLazyList [A ]): NonEmptyLazyListOps [A ] =
75
75
new NonEmptyLazyListOps (value)
@@ -110,7 +110,7 @@ class NonEmptyLazyListOps[A](private val value: NonEmptyLazyList[A])
110
110
* Returns a new NonEmptyLazyList consisting of `a` followed by this
111
111
*/
112
112
final def prepend [AA >: A ](a : AA ): NonEmptyLazyList [AA ] =
113
- create(a #:: toLazyList)
113
+ create(toLazyList.prepended(a) )
114
114
115
115
/**
116
116
* Alias for [[prepend ]].
@@ -121,6 +121,8 @@ class NonEmptyLazyListOps[A](private val value: NonEmptyLazyList[A])
121
121
/**
122
122
* Alias for [[prepend ]].
123
123
*/
124
+ // TODO: `a` should be by-name and this method should not be listed as an
125
+ // alias for `prepend`, but it's too late to change that in this version
124
126
final def #:: [AA >: A ](a : AA ): NonEmptyLazyList [AA ] =
125
127
prepend(a)
126
128
@@ -158,8 +160,7 @@ class NonEmptyLazyListOps[A](private val value: NonEmptyLazyList[A])
158
160
* Appends the given LazyList
159
161
*/
160
162
final def appendLazyList [AA >: A ](nell : LazyList [AA ]): NonEmptyLazyList [AA ] =
161
- if (nell.isEmpty) value
162
- else create(toLazyList ++ nell)
163
+ create(toLazyList ++ nell)
163
164
164
165
/**
165
166
* Alias for `appendLazyList`
@@ -171,8 +172,7 @@ class NonEmptyLazyListOps[A](private val value: NonEmptyLazyList[A])
171
172
* Prepends the given LazyList
172
173
*/
173
174
final def prependLazyList [AA >: A ](c : LazyList [AA ]): NonEmptyLazyList [AA ] =
174
- if (c.isEmpty) value
175
- else create(c ++ toLazyList)
175
+ create(c ++ toLazyList)
176
176
177
177
/**
178
178
* Prepends the given NonEmptyLazyList
0 commit comments