Skip to content
This repository was archived by the owner on Jun 10, 2021. It is now read-only.

Commit 9fa4e8a

Browse files
committed
Get rid of .impl._ import
1 parent 507d8ca commit 9fa4e8a

File tree

10 files changed

+10
-31
lines changed

10 files changed

+10
-31
lines changed

build.sbt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name := "asyncstreams"
22

33
organization := "danslapman"
44

5-
version := "0.6-SNAPSHOT"
5+
version := "1.0-rc1"
66

77
scalaVersion := "2.12.4"
88

readme.md

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,20 +23,12 @@ asyncstreams is tested to work with:
2323
- twitter futures
2424
- monix tasks
2525

26-
Currently, asyncstreams' main branch uses scalaz's typeclasses. If Your projects uses cats
27-
or have some other cats-based dependencies, You can use cats-based port, which have feature parity
28-
with master, but is experimental for now. I'm planning to migrate master to cats after cats 1.0.0 is released.
29-
3026
asyncstreams is available via bintray:
3127

3228
```
3329
resolvers += Resolver.bintrayRepo("danslapman", "maven")
3430
35-
//scalaz-based
36-
libraryDependencies += "danslapman" %% "asyncstreams" % "0.5"
37-
38-
//cats-based
39-
libraryDependencies += "danslapman" %% "asyncstreams" % "0.5-cats-rc1"
31+
libraryDependencies += "danslapman" %% "asyncstreams" % "1.0-rc1"
4032
```
4133

4234
asyncstreams initially based on [scala-async](https://github.com/iboltaev/scala-async) ideas.

src/main/scala/asyncstreams/impl/package.scala

Lines changed: 0 additions & 14 deletions
This file was deleted.

src/main/scala/asyncstreams/package.scala

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import cats.Monad
1+
import alleycats.EmptyK
2+
import cats.{Alternative, Monad, MonadError}
23
import cats.mtl.FunctorEmpty
34
import cats.mtl.syntax.empty._
45
import cats.syntax.applicative._
@@ -17,4 +18,10 @@ package object asyncstreams {
1718
implicit class FunctorWithFilter[F[_] : FunctorEmpty, A](fa: F[A]) {
1819
def withFilter(f: A => Boolean): F[A] = fa.filter(f)
1920
}
21+
22+
implicit def streamInstance[F[+_]: λ[`x[+_]` => MonadError[x, Throwable]]]: Monad[AsyncStream[F, +?]] with Alternative[AsyncStream[F, +?]] = new ASInstanceForMonadError[F]
23+
implicit def asimpl[F[+_]: λ[`x[+_]` => MonadError[x, Throwable]]]: ASImpl[F] = new ASImplForMonadError[F]
24+
implicit def zeroK[F[+_]](implicit me: MonadError[F, Throwable]): EmptyK[F] = new EmptyK[F] {
25+
override def empty[A]: F[A] = me.raiseError(new NoSuchElementException)
26+
}
2027
}

src/test/scala/asyncstreams/monixTask/AsyncStreamTestsWithMonixTask.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package asyncstreams.monixTask
22

33
import asyncstreams._
4-
import asyncstreams.impl._
54
import cats.syntax.applicative._
65
import cats.syntax.flatMap._
76
import cats.syntax.functor._

src/test/scala/asyncstreams/stdFuture/AsyncStreamMonadSyntaxTests.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package asyncstreams.stdFuture
22

33
import asyncstreams._
4-
import asyncstreams.impl._
54
import asyncstreams.statet._
65
import cats.instances.future._
76
import cats.mtl.instances.state._

src/test/scala/asyncstreams/stdFuture/AsyncStreamOperations.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package asyncstreams.stdFuture
22

33
import asyncstreams._
4-
import asyncstreams.impl._
54
import cats.instances.int._
65
import cats.instances.future._
76
import cats.syntax.applicative._

src/test/scala/asyncstreams/stdFuture/AsyncStreamTestsWithStandardFuture.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package asyncstreams.stdFuture
33
import java.util.concurrent.Executors
44

55
import asyncstreams._
6-
import asyncstreams.impl._
76
import asyncstreams.{ASImpl, AsyncStream}
87
import cats.Monad
98
import cats.instances.future._

src/test/scala/asyncstreams/stdFuture/AsyncStreamUtilityMethodTests.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package asyncstreams.stdFuture
22

33
import asyncstreams._
4-
import asyncstreams.impl._
54
import cats.instances.future._
65
import org.scalatest.{FunSuite, Matchers}
76

src/test/scala/asyncstreams/twitterFuture/AsyncStreamTestsWithTwitterFuture.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package asyncstreams.twitterFuture
22

33
import asyncstreams._
4-
import asyncstreams.impl._
54
import asyncstreams.{ASImpl, AsyncStream}
65
import cats.syntax.flatMap._
76
import cats.syntax.functor._

0 commit comments

Comments
 (0)