Hedgehog Extra

Newtypes and Refinement types for Scala 3
| Project | Maven Central | Scala.js | Scala Native |
|---|---|---|---|
| hedgehog-extra-core | ✅ | ✅ | |
| hedgehog-extra-refined | ✅ | ❌ | |
| hedgehog-extra-refined4s | ✅ | ✅ |
Getting Started
To get hedgehog-extra for your project,
hedgehog-extra-core
- sbt
- sbt (with libraryDependencies)
- scala-cli
In build.sbt,
"io.kevinlee" %% "hedgehog-extra-core" % "0.17.0"
or for Scala.js and Scala Native
"io.kevinlee" %%% "hedgehog-extra-core" % "0.17.0"
In build.sbt,
libraryDependencies += "io.kevinlee" %% "hedgehog-extra-core" % "0.17.0"
or for Scala.js and Scala Native
libraryDependencies += "io.kevinlee" %%% "hedgehog-extra-core" % "0.17.0"
//> using dep "io.kevinlee::hedgehog-extra-core:0.17.0"
hedgehog-extra-refined4s
For Scala 3, you have the option to use refined4s in place of newtype and refined, along with the support for refined4s provided by hedgehog-extra.
- sbt
- sbt (with libraryDependencies)
- scala-cli
In build.sbt,
"io.kevinlee" %% "hedgehog-extra-refined4s" % "0.17.0"
or for Scala.js and Scala Native
"io.kevinlee" %%% "hedgehog-extra-refined4s" % "0.17.0"
In build.sbt,
libraryDependencies += "io.kevinlee" %% "hedgehog-extra-refined4s" % "0.17.0"
or for Scala.js and Scala Native
libraryDependencies += "io.kevinlee" %%% "hedgehog-extra-refined4s" % "0.17.0"
//> using dep "io.kevinlee::hedgehog-extra-refined4s:0.17.0"
hedgehog-extra-refined
- sbt
- sbt (with libraryDependencies)
- scala-cli
In build.sbt,
"io.kevinlee" %% "hedgehog-extra-refined" % "0.17.0"
or for Scala.js
"io.kevinlee" %%% "hedgehog-extra-refined" % "0.17.0"
In build.sbt,
libraryDependencies += "io.kevinlee" %% "hedgehog-extra-refined" % "0.17.0"
or for Scala.js
libraryDependencies += "io.kevinlee" %%% "hedgehog-extra-refined" % "0.17.0"
//> using dep "io.kevinlee::hedgehog-extra-refined:0.17.0"
All hedgehog-extra modules
- sbt
- sbt (with libraryDependencies)
- scala-cli
In build.sbt,
"io.kevinlee" %% "hedgehog-extra-core" % "0.17.0",
"io.kevinlee" %% "hedgehog-extra-refined" % "0.17.0",
"io.kevinlee" %% "hedgehog-extra-refined4s" % "0.17.0",
or for Scala.js
"io.kevinlee" %%% "hedgehog-extra-core" % "0.17.0",
"io.kevinlee" %%% "hedgehog-extra-refined" % "0.17.0",
"io.kevinlee" %%% "hedgehog-extra-refined4s" % "0.17.0",
or for Scala Native
"io.kevinlee" %%% "hedgehog-extra-core" % "0.17.0",
"io.kevinlee" %%% "hedgehog-extra-refined4s" % "0.17.0",
In build.sbt,
libraryDependencies ++= Seq(
"io.kevinlee" %% "hedgehog-extra-core" % "0.17.0",
"io.kevinlee" %% "hedgehog-extra-refined" % "0.17.0",
"io.kevinlee" %% "hedgehog-extra-refined4s" % "0.17.0",
)
or for Scala.js
libraryDependencies ++= Seq(
"io.kevinlee" %%% "hedgehog-extra-core" % "0.17.0",
"io.kevinlee" %%% "hedgehog-extra-refined" % "0.17.0",
"io.kevinlee" %%% "hedgehog-extra-refined4s" % "0.17.0",
)
or for Scala Native
libraryDependencies ++= Seq(
"io.kevinlee" %%% "hedgehog-extra-core" % "0.17.0",
"io.kevinlee" %%% "hedgehog-extra-refined4s" % "0.17.0",
)
//> using dep "io.kevinlee::hedgehog-extra-core:0.17.0"
//> using dep "io.kevinlee::hedgehog-extra-refined:0.17.0"
//> using dep "io.kevinlee::hedgehog-extra-refined4s:0.17.0"