Effect is a basic, home-made functional effect system with powerful errors.
A value of type Effect[A]
is a description of a computation that can produce a value of type A
, can fail with an error E
, can fail unexpectedly with a Throwable
or can be interrupted.
Effect has only one type parameter. Effect[A]
is mentally equivalent to ZIO[Any, E, A]
where error type E
is fixed to the error model e.scala.E
.
Effect is only a functional effect and not a complete solution to everything.
Add following to your build.sbt
(for now, Scala 3 only):
libraryDependencies += "dev.akif" %% "effect-core" % "0.3.1"
Effect is built with SBT. So, standard SBT tasks like clean
, compile
and test
can be used.
To run all tests:
sbt test
To run specific test(s):
sbt 'testOnly fullyQualifiedTestClassName1 fullyQualifiedTestClassName2 ...'
All contributions are welcome. Please feel free to send a pull request. You may check project page for current status of development and issues. Thank you!
Effect is licensed with MIT License.