diff --git a/build.sbt b/build.sbt index bf71ceac4..ffa5005b1 100644 --- a/build.sbt +++ b/build.sbt @@ -129,7 +129,8 @@ lazy val publishSettings = Seq( }, mimaReportSignatureProblems := true, mimaBinaryIssueFilters := Seq( - ProblemFilters.exclude[MissingClassProblem]("com.github.plokhotnyuk.jsoniter_scala.macros.ConfiguredJsonValueCodecWrapper") + ProblemFilters.exclude[DirectMissingMethodProblem]("com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs.*"), + ProblemFilters.exclude[DirectMissingMethodProblem]("io.circe.JsoniterScalaCodec.*") ) ) @@ -219,6 +220,7 @@ lazy val `jsoniter-scala-circe` = crossProject(JVMPlatform, JSPlatform, NativePl libraryDependencies ++= Seq( "io.circe" %%% "circe-core" % "0.14.10", "io.circe" %%% "circe-parser" % "0.14.10" % Test, + "org.scalatestplus" %%% "scalacheck-1-18" % "3.2.19.0" % Test, "org.scalatest" %%% "scalatest" % "3.2.19" % Test ) ) diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTReading.scala index 3e49190f1..ad469c868 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTReading.scala @@ -30,7 +30,6 @@ class ADTReading extends ADTBenchmark { @Benchmark def circeJsoniter(): ADTBase = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTWriting.scala index 6cfc89348..46a2bf780 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTWriting.scala @@ -31,7 +31,6 @@ class ADTWriting extends ADTBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsReading.scala index fb5a2edaa..80a0db469 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsReading.scala @@ -30,7 +30,6 @@ class AnyValsReading extends AnyValsBenchmark { @Benchmark def circeJsoniter(): AnyVals = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsWriting.scala index 288156b54..563abc5eb 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsWriting.scala @@ -31,7 +31,6 @@ class AnyValsWriting extends AnyValsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsReading.scala index e73dfb39c..47c3d2eba 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsReading.scala @@ -30,6 +30,7 @@ class ArrayOfBigDecimalsReading extends ArrayOfBigDecimalsBenchmark { @Benchmark def circeJsoniter(): Array[BigDecimal] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsWriting.scala index 6475449c7..9ae38bc9a 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsWriting.scala @@ -30,6 +30,7 @@ class ArrayOfBigDecimalsWriting extends ArrayOfBigDecimalsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesReading.scala index 8cdef30ba..e7b464af7 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesReading.scala @@ -29,6 +29,7 @@ class ArrayOfBytesReading extends ArrayOfBytesBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesWriting.scala index de2fb24f7..253c46681 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesWriting.scala @@ -31,6 +31,7 @@ class ArrayOfBytesWriting extends ArrayOfBytesBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesReading.scala index 0d0d96fb6..00d02efc4 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesReading.scala @@ -28,6 +28,7 @@ class ArrayOfDoublesReading extends ArrayOfDoublesBenchmark { @Benchmark def circeJsoniter(): Array[Double] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesWriting.scala index eef893c0d..5d65c6b55 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesWriting.scala @@ -30,6 +30,7 @@ class ArrayOfDoublesWriting extends ArrayOfDoublesBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsReading.scala index 7d73c8481..12cfecde2 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsReading.scala @@ -30,7 +30,6 @@ class ArrayOfEnumADTsReading extends ArrayOfEnumADTsBenchmark { @Benchmark def circeJsoniter(): Array[SuitADT] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsWriting.scala index a7fd09417..6f85ebf43 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsWriting.scala @@ -31,7 +31,6 @@ class ArrayOfEnumADTsWriting extends ArrayOfEnumADTsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsReading.scala index 42f38ec86..1a6949fce 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsReading.scala @@ -31,7 +31,6 @@ class ArrayOfEnumsReading extends ArrayOfEnumsBenchmark { @Benchmark def circeJsoniter(): Array[SuitEnum] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsWriting.scala index a3d7c55df..71e2c1850 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsWriting.scala @@ -31,7 +31,6 @@ class ArrayOfEnumsWriting extends ArrayOfEnumsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsReading.scala index a761c6793..3ac20f75c 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsReading.scala @@ -29,6 +29,7 @@ class ArrayOfFloatsReading extends ArrayOfFloatsBenchmark { @Benchmark def circeJsoniter(): Array[Float] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsWriting.scala index 565df2987..32e4af2e1 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsWriting.scala @@ -30,6 +30,7 @@ class ArrayOfFloatsWriting extends ArrayOfFloatsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsReading.scala index dbe2a3224..dceaf3497 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsReading.scala @@ -28,6 +28,7 @@ class ArrayOfIntsReading extends ArrayOfIntsBenchmark { @Benchmark def circeJsoniter(): Array[Int] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsWriting.scala index a8546a8b5..a9948f0d1 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsWriting.scala @@ -30,6 +30,7 @@ class ArrayOfIntsWriting extends ArrayOfIntsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsReading.scala index 911f9b81e..8b404f189 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsReading.scala @@ -29,7 +29,6 @@ class ArrayOfJavaEnumsReading extends ArrayOfJavaEnumsBenchmark { @Benchmark def circeJsoniter(): Array[Suit] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsWriting.scala index 752222696..571c7ad3f 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsWriting.scala @@ -30,7 +30,6 @@ class ArrayOfJavaEnumsWriting extends ArrayOfJavaEnumsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsReading.scala index b97e73870..0c0e272ed 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsReading.scala @@ -28,6 +28,7 @@ class ArrayOfLongsReading extends ArrayOfLongsBenchmark { @Benchmark def circeJsoniter(): Array[Long] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsWriting.scala index d4cf58cdc..e040f0ae0 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsWriting.scala @@ -30,6 +30,7 @@ class ArrayOfLongsWriting extends ArrayOfLongsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsReading.scala index d27316d5d..9a7dddea1 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsReading.scala @@ -28,6 +28,7 @@ class ArrayOfShortsReading extends ArrayOfShortsBenchmark { @Benchmark def circeJsoniter(): Array[Short] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsWriting.scala index 36189f203..98647aca2 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsWriting.scala @@ -30,6 +30,7 @@ class ArrayOfShortsWriting extends ArrayOfShortsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Reading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Reading.scala index 3616e135d..a33d10d84 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Reading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Reading.scala @@ -29,7 +29,6 @@ class Base64Reading extends Base64Benchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Writing.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Writing.scala index 285e7c599..a9420932b 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Writing.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Writing.scala @@ -30,7 +30,6 @@ class Base64Writing extends Base64Benchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalReading.scala index 440809a73..16349e2c2 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalReading.scala @@ -30,6 +30,7 @@ class BigDecimalReading extends BigDecimalBenchmark { @Benchmark def circeJsoniter(): BigDecimal = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalWriting.scala index 15609464d..9c4a3f2db 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalWriting.scala @@ -30,6 +30,7 @@ class BigDecimalWriting extends BigDecimalBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetReading.scala index 90d95d8a7..4649c04d0 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetReading.scala @@ -23,7 +23,6 @@ class BitSetReading extends BitSetBenchmark { @Benchmark def circeJsoniter(): BitSet = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetWriting.scala index 671b98ace..8758effe6 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetWriting.scala @@ -23,7 +23,6 @@ class BitSetWriting extends BitSetBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ExtractFieldsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ExtractFieldsReading.scala index 972eebb3f..aa9689e18 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ExtractFieldsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/ExtractFieldsReading.scala @@ -30,7 +30,6 @@ class ExtractFieldsReading extends ExtractFieldsBenchmark { @Benchmark def circeJsoniter(): ExtractFields = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONReading.scala index b62bd47d9..2e8d57a85 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONReading.scala @@ -31,7 +31,6 @@ class GeoJSONReading extends GeoJSONBenchmark { @Benchmark def circeJsoniter(): GeoJSON = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONWriting.scala index bcf75c006..20663fe59 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONWriting.scala @@ -31,7 +31,6 @@ class GeoJSONWriting extends GeoJSONBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIPrettyPrinting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIPrettyPrinting.scala index e002b86cc..aaecccc3b 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIPrettyPrinting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIPrettyPrinting.scala @@ -23,7 +23,6 @@ class GoogleMapsAPIPrettyPrinting extends GoogleMapsAPIBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIReading.scala index caf110d1a..14a2f0798 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIReading.scala @@ -31,7 +31,6 @@ class GoogleMapsAPIReading extends GoogleMapsAPIBenchmark { @Benchmark def circeJsoniter(): DistanceMatrix = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIWriting.scala index 42608412f..eed910a27 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIWriting.scala @@ -31,7 +31,6 @@ class GoogleMapsAPIWriting extends GoogleMapsAPIBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansReading.scala index f9bcbcebe..4f05af7e7 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansReading.scala @@ -23,7 +23,6 @@ class IntMapOfBooleansReading extends IntMapOfBooleansBenchmark { @Benchmark def circeJsoniter(): IntMap[Boolean] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansWriting.scala index a429cf107..e9084b678 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansWriting.scala @@ -23,7 +23,6 @@ class IntMapOfBooleansWriting extends IntMapOfBooleansBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntReading.scala index f7aecef10..00cca66bc 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntReading.scala @@ -28,6 +28,7 @@ class IntReading extends IntBenchmark { @Benchmark def circeJsoniter(): Int = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntWriting.scala index c425b9419..33f702d95 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntWriting.scala @@ -30,6 +30,7 @@ class IntWriting extends IntBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MissingRequiredFieldsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MissingRequiredFieldsReading.scala index 6938c36cc..eba183607 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MissingRequiredFieldsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MissingRequiredFieldsReading.scala @@ -40,7 +40,6 @@ class MissingRequiredFieldsReading extends MissingRequiredFieldsBenchmark { @Benchmark def circeJsoniter(): String = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetReading.scala index df53e10b2..ccb409381 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetReading.scala @@ -23,7 +23,6 @@ class MutableBitSetReading extends MutableBitSetBenchmark { @Benchmark def circeJsoniter(): mutable.BitSet = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetWriting.scala index 80f9ded11..310639a35 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetWriting.scala @@ -23,7 +23,6 @@ class MutableBitSetWriting extends MutableBitSetBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansReading.scala index bf363c6a3..02dbcd339 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansReading.scala @@ -23,7 +23,6 @@ class MutableLongMapOfBooleansReading extends MutableLongMapOfBooleansBenchmark @Benchmark def circeJsoniter(): mutable.LongMap[Boolean] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansWriting.scala index 264f8a19d..80532a03b 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansWriting.scala @@ -23,7 +23,6 @@ class MutableLongMapOfBooleansWriting extends MutableLongMapOfBooleansBenchmark @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsReading.scala index 7dba236e7..b0cee7aef 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsReading.scala @@ -30,7 +30,6 @@ class NestedStructsReading extends NestedStructsBenchmark { @Benchmark def circeJsoniter(): NestedStructs = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsWriting.scala index c0beeeb2f..f34874604 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsWriting.scala @@ -31,7 +31,6 @@ class NestedStructsWriting extends NestedStructsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBReading.scala index 28b51a267..846c6a286 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBReading.scala @@ -31,7 +31,6 @@ class OpenRTBReading extends OpenRTBBenchmark { @Benchmark def circeJsoniter(): BidRequest = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBWriting.scala index 99dd782a4..54736d987 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBWriting.scala @@ -31,7 +31,6 @@ class OpenRTBWriting extends OpenRTBBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesReading.scala index 819226d22..14b6eb24a 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesReading.scala @@ -30,7 +30,6 @@ class PrimitivesReading extends PrimitivesBenchmark { @Benchmark def circeJsoniter(): Primitives = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesWriting.scala index d44e75df6..ba710baab 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesWriting.scala @@ -31,7 +31,6 @@ class PrimitivesWriting extends PrimitivesBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsReading.scala index 36dba1aa3..4308fadcc 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsReading.scala @@ -28,6 +28,7 @@ class SetOfIntsReading extends SetOfIntsBenchmark { @Benchmark def circeJsoniter(): Set[Int] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsWriting.scala index aa2871991..289778449 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsWriting.scala @@ -30,6 +30,7 @@ class SetOfIntsWriting extends SetOfIntsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIReading.scala index 0a8fc8b00..43ddb8054 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIReading.scala @@ -31,7 +31,6 @@ class TwitterAPIReading extends TwitterAPIBenchmark { @Benchmark def circeJsoniter(): Seq[Tweet] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIWriting.scala index e6caf0765..f7c8c86a8 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-2/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIWriting.scala @@ -32,7 +32,6 @@ class TwitterAPIWriting extends TwitterAPIBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Util._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTReading.scala index bb8463511..9902c269f 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTReading.scala @@ -21,7 +21,6 @@ class ADTReading extends ADTBenchmark { @Benchmark def circeJsoniter(): ADTBase = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTWriting.scala index 674edb0d3..086ec216d 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ADTWriting.scala @@ -22,7 +22,6 @@ class ADTWriting extends ADTBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsReading.scala index a719df4b7..ffa7ec486 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsReading.scala @@ -21,7 +21,6 @@ class AnyValsReading extends AnyValsBenchmark { @Benchmark def circeJsoniter(): AnyVals = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsWriting.scala index e68298434..3cd8de779 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/AnyValsWriting.scala @@ -22,7 +22,6 @@ class AnyValsWriting extends AnyValsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsReading.scala index e90f0a41d..5e93c8760 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsReading.scala @@ -21,6 +21,7 @@ class ArrayOfBigDecimalsReading extends ArrayOfBigDecimalsBenchmark { @Benchmark def circeJsoniter(): Array[BigDecimal] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsWriting.scala index 34ac6b796..556ad6a16 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBigDecimalsWriting.scala @@ -22,6 +22,7 @@ class ArrayOfBigDecimalsWriting extends ArrayOfBigDecimalsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesReading.scala index f641337ed..5f793ca43 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesReading.scala @@ -21,6 +21,7 @@ class ArrayOfBytesReading extends ArrayOfBytesBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesWriting.scala index db733d47f..d99076d27 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfBytesWriting.scala @@ -23,6 +23,7 @@ class ArrayOfBytesWriting extends ArrayOfBytesBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesReading.scala index 4419f6781..16789627e 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesReading.scala @@ -20,6 +20,7 @@ class ArrayOfDoublesReading extends ArrayOfDoublesBenchmark { @Benchmark def circeJsoniter(): Array[Double] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesWriting.scala index 603e7971e..ca9cb8acb 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfDoublesWriting.scala @@ -22,6 +22,7 @@ class ArrayOfDoublesWriting extends ArrayOfDoublesBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsReading.scala index 9dfdd1b13..66d93289d 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsReading.scala @@ -21,7 +21,6 @@ class ArrayOfEnumADTsReading extends ArrayOfEnumADTsBenchmark { @Benchmark def circeJsoniter(): Array[SuitADT] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsWriting.scala index 126c23c2b..275999710 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumADTsWriting.scala @@ -22,7 +22,6 @@ class ArrayOfEnumADTsWriting extends ArrayOfEnumADTsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsReading.scala index 647de66f9..98042a958 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsReading.scala @@ -22,7 +22,6 @@ class ArrayOfEnumsReading extends ArrayOfEnumsBenchmark { @Benchmark def circeJsoniter(): Array[SuitEnum] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsWriting.scala index 1eab1c98c..403281deb 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfEnumsWriting.scala @@ -22,7 +22,6 @@ class ArrayOfEnumsWriting extends ArrayOfEnumsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsReading.scala index 77f67642f..3c9f95287 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsReading.scala @@ -21,6 +21,7 @@ class ArrayOfFloatsReading extends ArrayOfFloatsBenchmark { @Benchmark def circeJsoniter(): Array[Float] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsWriting.scala index 666db3cf7..74a32df13 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfFloatsWriting.scala @@ -22,6 +22,7 @@ class ArrayOfFloatsWriting extends ArrayOfFloatsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsReading.scala index 25f6bfd2c..8820da1e4 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsReading.scala @@ -20,6 +20,7 @@ class ArrayOfIntsReading extends ArrayOfIntsBenchmark { @Benchmark def circeJsoniter(): Array[Int] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsWriting.scala index 5701ba79d..019e45922 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfIntsWriting.scala @@ -22,6 +22,7 @@ class ArrayOfIntsWriting extends ArrayOfIntsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsReading.scala index ffbecf32f..02fd65aae 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsReading.scala @@ -21,7 +21,6 @@ class ArrayOfJavaEnumsReading extends ArrayOfJavaEnumsBenchmark { @Benchmark def circeJsoniter(): Array[Suit] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsWriting.scala index 8464b0297..fcfbab711 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfJavaEnumsWriting.scala @@ -22,7 +22,6 @@ class ArrayOfJavaEnumsWriting extends ArrayOfJavaEnumsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsReading.scala index bb3a5043e..ea9b41b6a 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsReading.scala @@ -20,6 +20,7 @@ class ArrayOfLongsReading extends ArrayOfLongsBenchmark { @Benchmark def circeJsoniter(): Array[Long] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsWriting.scala index 30252f542..aea0c278f 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfLongsWriting.scala @@ -22,6 +22,7 @@ class ArrayOfLongsWriting extends ArrayOfLongsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsReading.scala index 239b4b696..66d65f8f7 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsReading.scala @@ -20,6 +20,7 @@ class ArrayOfShortsReading extends ArrayOfShortsBenchmark { @Benchmark def circeJsoniter(): Array[Short] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsWriting.scala index 7a6fd3d91..b9dcba3f0 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ArrayOfShortsWriting.scala @@ -22,6 +22,7 @@ class ArrayOfShortsWriting extends ArrayOfShortsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Reading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Reading.scala index 5baf87434..e05d03485 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Reading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Reading.scala @@ -20,7 +20,6 @@ class Base64Reading extends Base64Benchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Writing.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Writing.scala index a4e2cce36..4f5ae0fbc 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Writing.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/Base64Writing.scala @@ -21,7 +21,6 @@ class Base64Writing extends Base64Benchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalReading.scala index fbbb31ca4..a4a752f44 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalReading.scala @@ -21,6 +21,7 @@ class BigDecimalReading extends BigDecimalBenchmark { @Benchmark def circeJsoniter(): BigDecimal = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalWriting.scala index f49010da3..ec6c0b865 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BigDecimalWriting.scala @@ -22,6 +22,7 @@ class BigDecimalWriting extends BigDecimalBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetReading.scala index f67366b2a..d26371b6c 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetReading.scala @@ -14,7 +14,6 @@ class BitSetReading extends BitSetBenchmark { @Benchmark def circeJsoniter(): BitSet = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetWriting.scala index 91b180911..b7ec6f1d8 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/BitSetWriting.scala @@ -14,7 +14,6 @@ class BitSetWriting extends BitSetBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ExtractFieldsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ExtractFieldsReading.scala index 2a950c421..ca2a82191 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ExtractFieldsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/ExtractFieldsReading.scala @@ -21,7 +21,6 @@ class ExtractFieldsReading extends ExtractFieldsBenchmark { @Benchmark def circeJsoniter(): ExtractFields = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONReading.scala index 333458cb3..8761dc0ed 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONReading.scala @@ -22,7 +22,6 @@ class GeoJSONReading extends GeoJSONBenchmark { @Benchmark def circeJsoniter(): GeoJSON = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONWriting.scala index 1b23d4a6c..44d479b12 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GeoJSONWriting.scala @@ -22,7 +22,6 @@ class GeoJSONWriting extends GeoJSONBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIPrettyPrinting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIPrettyPrinting.scala index a5718606b..149ed13ac 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIPrettyPrinting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIPrettyPrinting.scala @@ -14,7 +14,6 @@ class GoogleMapsAPIPrettyPrinting extends GoogleMapsAPIBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIReading.scala index 468a2d154..43881e063 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIReading.scala @@ -22,7 +22,6 @@ class GoogleMapsAPIReading extends GoogleMapsAPIBenchmark { @Benchmark def circeJsoniter(): DistanceMatrix = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIWriting.scala index ce4802dd6..b190cc8f0 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/GoogleMapsAPIWriting.scala @@ -22,7 +22,6 @@ class GoogleMapsAPIWriting extends GoogleMapsAPIBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansReading.scala index 5e76524c5..3795f12f1 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansReading.scala @@ -14,7 +14,6 @@ class IntMapOfBooleansReading extends IntMapOfBooleansBenchmark { @Benchmark def circeJsoniter(): IntMap[Boolean] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansWriting.scala index ed91beff8..a6e7ec3ca 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntMapOfBooleansWriting.scala @@ -14,7 +14,6 @@ class IntMapOfBooleansWriting extends IntMapOfBooleansBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntReading.scala index c6bc0611f..5c8f5d1c5 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntReading.scala @@ -20,6 +20,7 @@ class IntReading extends IntBenchmark { @Benchmark def circeJsoniter(): Int = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntWriting.scala index 8fad84323..017349791 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/IntWriting.scala @@ -22,6 +22,7 @@ class IntWriting extends IntBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MissingRequiredFieldsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MissingRequiredFieldsReading.scala index 7a49817ae..d1e5dd519 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MissingRequiredFieldsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MissingRequiredFieldsReading.scala @@ -26,7 +26,6 @@ class MissingRequiredFieldsReading extends MissingRequiredFieldsBenchmark { @Benchmark def circeJsoniter(): String = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetReading.scala index 3e0593972..7c8fc535b 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetReading.scala @@ -14,7 +14,6 @@ class MutableBitSetReading extends MutableBitSetBenchmark { @Benchmark def circeJsoniter(): mutable.BitSet = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetWriting.scala index b37ba658d..f7947aa1b 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableBitSetWriting.scala @@ -14,7 +14,6 @@ class MutableBitSetWriting extends MutableBitSetBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansReading.scala index 3f4e89ade..51f563c72 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansReading.scala @@ -14,7 +14,6 @@ class MutableLongMapOfBooleansReading extends MutableLongMapOfBooleansBenchmark @Benchmark def circeJsoniter(): mutable.LongMap[Boolean] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansWriting.scala index 4ada84c2f..b1f4d8df8 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/MutableLongMapOfBooleansWriting.scala @@ -14,7 +14,6 @@ class MutableLongMapOfBooleansWriting extends MutableLongMapOfBooleansBenchmark @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsReading.scala index 7bfe563be..2410aa3ca 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsReading.scala @@ -22,7 +22,6 @@ class NestedStructsReading extends NestedStructsBenchmark { @Benchmark def circeJsoniter(): NestedStructs = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsWriting.scala index 1b1c2c5ba..4b8a664b6 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/NestedStructsWriting.scala @@ -23,7 +23,6 @@ class NestedStructsWriting extends NestedStructsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBReading.scala index fbd19d1cd..1a5e09e20 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBReading.scala @@ -22,7 +22,6 @@ class OpenRTBReading extends OpenRTBBenchmark { @Benchmark def circeJsoniter(): BidRequest = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBWriting.scala index 891f0a8d9..06bbd6116 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/OpenRTBWriting.scala @@ -21,7 +21,6 @@ class OpenRTBWriting extends OpenRTBBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesReading.scala index 666083756..990cf4a2f 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesReading.scala @@ -21,7 +21,6 @@ class PrimitivesReading extends PrimitivesBenchmark { @Benchmark def circeJsoniter(): Primitives = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesWriting.scala index defc5ac3d..c2ea7dc4d 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/PrimitivesWriting.scala @@ -22,7 +22,6 @@ class PrimitivesWriting extends PrimitivesBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsReading.scala index 888030c2c..93cc5bf20 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsReading.scala @@ -20,6 +20,7 @@ class SetOfIntsReading extends SetOfIntsBenchmark { @Benchmark def circeJsoniter(): Set[Int] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsWriting.scala index be4e9f380..e9c1ba900 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/SetOfIntsWriting.scala @@ -22,6 +22,7 @@ class SetOfIntsWriting extends SetOfIntsBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.syntax._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIReading.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIReading.scala index cf2c6122b..7b91090f5 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIReading.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIReading.scala @@ -22,7 +22,6 @@ class TwitterAPIReading extends TwitterAPIBenchmark { @Benchmark def circeJsoniter(): Seq[Tweet] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Decoder diff --git a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIWriting.scala b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIWriting.scala index 69c43a80e..b41579cf0 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIWriting.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala-3/com/github/plokhotnyuk/jsoniter_scala/benchmark/TwitterAPIWriting.scala @@ -23,7 +23,6 @@ class TwitterAPIWriting extends TwitterAPIBenchmark { @Benchmark def circeJsoniter(): Array[Byte] = { - import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceEncodersDecoders._ import com.github.plokhotnyuk.jsoniter_scala.benchmark.CirceJsoniterCodecs._ import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe.Util._ diff --git a/jsoniter-scala-benchmark/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/benchmark/CirceEncodersDecoders.scala b/jsoniter-scala-benchmark/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/benchmark/CirceEncodersDecoders.scala index 3f0d00306..e9b792149 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/benchmark/CirceEncodersDecoders.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/benchmark/CirceEncodersDecoders.scala @@ -2,8 +2,6 @@ package com.github.plokhotnyuk.jsoniter_scala.benchmark import com.github.plokhotnyuk.jsoniter_scala.benchmark.BitMask.toBitMask import com.github.plokhotnyuk.jsoniter_scala.benchmark.SuitEnum.SuitEnum -import io.circe.Decoder._ -import io.circe.Encoder._ import io.circe._ import io.circe.generic.semiauto._ import io.circe.syntax._ @@ -32,14 +30,14 @@ object CirceEncodersDecoders { }) } implicit val anyValsC3c: Codec[AnyVals] = { - implicit val c1: Codec[ByteVal] = Codec.from(decodeByte.map(ByteVal.apply), encodeByte.contramap(_.a)) - implicit val c2: Codec[ShortVal] = Codec.from(decodeShort.map(ShortVal.apply), encodeShort.contramap(_.a)) - implicit val c3: Codec[IntVal] = Codec.from(decodeInt.map(IntVal.apply), encodeInt.contramap(_.a)) - implicit val c4: Codec[LongVal] = Codec.from(decodeLong.map(LongVal.apply), encodeLong.contramap(_.a)) - implicit val c5: Codec[BooleanVal] = Codec.from(decodeBoolean.map(BooleanVal.apply), encodeBoolean.contramap(_.a)) - implicit val c6: Codec[CharVal] = Codec.from(decodeChar.map(CharVal.apply), encodeChar.contramap(_.a)) - implicit val c7: Codec[DoubleVal] = Codec.from(decodeDouble.map(DoubleVal.apply), encodeDouble.contramap(_.a)) - implicit val c8: Codec[FloatVal] = Codec.from(decodeFloat.map(FloatVal.apply), encodeFloat.contramap(_.a)) + implicit val c1: Codec[ByteVal] = Codec.from(Decoder.decodeByte.map(ByteVal.apply), Encoder.encodeByte.contramap(_.a)) + implicit val c2: Codec[ShortVal] = Codec.from(Decoder.decodeShort.map(ShortVal.apply), Encoder.encodeShort.contramap(_.a)) + implicit val c3: Codec[IntVal] = Codec.from(Decoder.decodeInt.map(IntVal.apply), Encoder.encodeInt.contramap(_.a)) + implicit val c4: Codec[LongVal] = Codec.from(Decoder.decodeLong.map(LongVal.apply), Encoder.encodeLong.contramap(_.a)) + implicit val c5: Codec[BooleanVal] = Codec.from(Decoder.decodeBoolean.map(BooleanVal.apply), Encoder.encodeBoolean.contramap(_.a)) + implicit val c6: Codec[CharVal] = Codec.from(Decoder.decodeChar.map(CharVal.apply), Encoder.encodeChar.contramap(_.a)) + implicit val c7: Codec[DoubleVal] = Codec.from(Decoder.decodeDouble.map(DoubleVal.apply), Encoder.encodeDouble.contramap(_.a)) + implicit val c8: Codec[FloatVal] = Codec.from(Decoder.decodeFloat.map(FloatVal.apply), Encoder.encodeFloat.contramap(_.a)) deriveCodec } val base64C3c: Codec[Array[Byte]] = @@ -575,7 +573,7 @@ object CirceEncodersDecoders { ("reqs", x.reqs.asJson) )) } - implicit val bigIntE5r: Encoder[BigInt] = encodeJsonNumber + implicit val bigIntE5r: Encoder[BigInt] = Encoder.encodeJsonNumber .contramap(x => JsonNumber.fromDecimalStringUnsafe(new java.math.BigDecimal(x.bigInteger).toPlainString)) implicit val bitSetC3c: Codec[BitSet] = Codec.from(Decoder.decodeArray[Int].map(arr => BitSet.fromBitMaskNoCopy(toBitMask(arr, Int.MaxValue /* WARNING: It is an unsafe option for open systems */))), @@ -673,19 +671,19 @@ object CirceEncodersDecoders { }), Encoder.encodeMapLike[Long, Boolean, mutable.Map].contramapObject((m: mutable.LongMap[Boolean]) => m)) implicit val missingRequiredFieldsC3c: Codec[MissingRequiredFields] = deriveCodec implicit val nestedStructsC3c: Codec[NestedStructs] = deriveCodec - implicit val suitC3c: Codec[Suit] = Codec.from(decodeString.emap { s => + implicit val suitC3c: Codec[Suit] = Codec.from(Decoder.decodeString.emap { s => try new Right(Suit.valueOf(s)) catch { case _: IllegalArgumentException => new Left("Suit") } - }, encodeString.contramap[Suit](_.name)) - implicit val suitADTC3c: Codec[SuitADT] = Codec.from(decodeString.map { + }, Encoder.encodeString.contramap[Suit](_.name)) + implicit val suitADTC3c: Codec[SuitADT] = Codec.from(Decoder.decodeString.map { val m = Map( "Hearts" -> Hearts, "Spades" -> Spades, "Diamonds" -> Diamonds, "Clubs" -> Clubs) s => m.getOrElse(s, throw new IllegalArgumentException("SuitADT")) - }, encodeString.contramap(_.toString)) + }, Encoder.encodeString.contramap(_.toString)) implicit val suitEnumC3c: Codec[SuitEnum] = Codec.codecForEnumeration(SuitEnum) implicit val primitivesC3c: Codec[Primitives] = deriveCodec implicit val tweetC3c: Codec[TwitterAPI.Tweet] = { diff --git a/jsoniter-scala-benchmark/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/benchmark/CirceJsoniterCodecs.scala b/jsoniter-scala-benchmark/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/benchmark/CirceJsoniterCodecs.scala index f794fbe5d..75d110791 100644 --- a/jsoniter-scala-benchmark/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/benchmark/CirceJsoniterCodecs.scala +++ b/jsoniter-scala-benchmark/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/benchmark/CirceJsoniterCodecs.scala @@ -1,17 +1,595 @@ package com.github.plokhotnyuk.jsoniter_scala.benchmark -import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ +import com.github.plokhotnyuk.jsoniter_scala.benchmark.BitMask.toBitMask +import com.github.plokhotnyuk.jsoniter_scala.benchmark.SuitEnum.SuitEnum import com.github.plokhotnyuk.jsoniter_scala.circe.JsoniterScalaCodec -import com.github.plokhotnyuk.jsoniter_scala.core.{JsonValueCodec, ReaderConfig, WriterConfig} +import com.github.plokhotnyuk.jsoniter_scala.core._ import io.circe._ -import io.circe.generic.semiauto.deriveCodec +import io.circe.generic.semiauto._ +import io.circe.syntax.EncoderOps import java.time.Instant +import java.util.Base64 +import scala.collection.immutable.{BitSet, IntMap, Map} +import scala.collection.mutable object CirceJsoniterCodecs { + import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ + val escapingConfig: WriterConfig = WriterConfig.withEscapeUnicode(true) val prettyConfig: WriterConfig = WriterConfig.withIndentionStep(2).withPreferredBufSize(32768) val tooLongStringConfig: ReaderConfig = ReaderConfig.withPreferredCharBufSize(1024 * 1024) implicit val jsonCodec: JsonValueCodec[Json] = JsoniterScalaCodec.jsonCodec(doSerialize = _ ne Json.Null) + implicit val adtC3c: Codec[ADTBase] = { + implicit val c1: Codec[X] = deriveCodec + implicit val c2: Codec[Y] = deriveCodec + implicit val c3: Codec[Z] = deriveCodec + Codec.from(Decoder.instance(c => + c.downField("type").as[String].flatMap { + case "X" => c.as[X] + case "Y" => c.as[Y] + case "Z" => c.as[Z] + }), Encoder.instance { + case x: X => x.asJson.mapObject(_.+:("type" -> "X".asJson)) + case y: Y => y.asJson.mapObject(_.+:("type" -> "Y".asJson)) + case z: Z => z.asJson.mapObject(_.+:("type" -> "Z".asJson)) + }) + } + implicit val anyValsC3c: Codec[AnyVals] = { + implicit val c1: Codec[ByteVal] = Codec.from(byteC3C.map(ByteVal.apply), byteC3C.contramap(_.a)) + implicit val c2: Codec[ShortVal] = Codec.from(shortC3C.map(ShortVal.apply), shortC3C.contramap(_.a)) + implicit val c3: Codec[IntVal] = Codec.from(intC3C.map(IntVal.apply), intC3C.contramap(_.a)) + implicit val c4: Codec[LongVal] = Codec.from(longC3C.map(LongVal.apply), longC3C.contramap(_.a)) + implicit val c5: Codec[BooleanVal] = Codec.from(Decoder.decodeBoolean.map(BooleanVal.apply), Encoder.encodeBoolean.contramap(_.a)) + implicit val c6: Codec[CharVal] = Codec.from(Decoder.decodeChar.map(CharVal.apply), Encoder.encodeChar.contramap(_.a)) + implicit val c7: Codec[DoubleVal] = Codec.from(doubleC3C.map(DoubleVal.apply), doubleC3C.contramap(_.a)) + implicit val c8: Codec[FloatVal] = Codec.from(floatC3C.map(FloatVal.apply), floatC3C.contramap(_.a)) + deriveCodec + } + val base64C3c: Codec[Array[Byte]] = + Codec.from(Decoder.decodeString.map[Array[Byte]](Base64.getDecoder.decode), + Encoder.encodeString.contramap[Array[Byte]](Base64.getEncoder.encodeToString)) + implicit val bidRequestC3c: Codec[OpenRTB.BidRequest] = { + implicit val c21: Codec[OpenRTB.Segment] = + Codec.from(deriveDecoder, (x: OpenRTB.Segment) => Util.toJObject( + ("id", x.id.asJson), + ("name", x.name.asJson), + ("value", x.value.asJson) + )) + implicit val c20: Codec[OpenRTB.Data] = + Codec.from((c: HCursor) => for { + id <- c.downField("id").as[Option[String]] + name <- c.downField("name").as[Option[String]] + segment <- c.downField("segment").as[Option[List[OpenRTB.Segment]]] + } yield { + new OpenRTB.Data(id, name, segment.getOrElse(Nil)) + }, (x: OpenRTB.Data) => Util.toJObject( + ("id", x.id.asJson), + ("name", x.name.asJson), + ("segment", x.segment.asJson) + )) + implicit val c19: Codec[OpenRTB.Geo] = + Codec.from(deriveDecoder, (x: OpenRTB.Geo) => Util.toJObject( + ("lat", x.lat.asJson), + ("lon", x.lon.asJson), + ("type", x.`type`.asJson), + ("accuracy", x.accuracy.asJson), + ("lastfix", x.lastfix.asJson), + ("ipservice", x.ipservice.asJson), + ("country", x.country.asJson), + ("region", x.region.asJson), + ("regionfips104", x.regionfips104.asJson), + ("metro", x.metro.asJson), + ("city", x.city.asJson), + ("zip", x.zip.asJson), + ("utcoffset", x.utcoffset.asJson), + )) + implicit val c18: Codec[OpenRTB.User] = + Codec.from(deriveDecoder, (x: OpenRTB.User) => Util.toJObject( + ("id", x.id.asJson), + ("buyeruid", x.buyeruid.asJson), + ("yob", x.yob.asJson), + ("gender", x.gender.asJson), + ("keywords", x.keywords.asJson), + ("customdata", x.customdata.asJson), + ("geo", x.geo.asJson), + ("data", x.data.asJson), + )) + implicit val c17: Codec[OpenRTB.Device] = + Codec.from(deriveDecoder, (x: OpenRTB.Device) => Util.toJObject( + ("ua", x.ua.asJson), + ("geo", x.geo.asJson), + ("dnt", x.dnt.asJson), + ("lmt", x.lmt.asJson), + ("ip", x.ip.asJson), + ("devicetype", x.devicetype.asJson), + ("make", x.make.asJson), + ("model", x.model.asJson), + ("os", x.os.asJson), + ("osv", x.osv.asJson), + ("hwv", x.hwv.asJson), + ("h", x.h.asJson), + ("w", x.w.asJson), + ("ppi", x.ppi.asJson), + ("pxratio", x.pxratio.asJson), + ("js", x.js.asJson), + ("geofetch", x.geofetch.asJson), + ("flashver", x.flashver.asJson), + ("language", x.language.asJson), + ("carrier", x.carrier.asJson), + ("mccmnc", x.mccmnc.asJson), + ("connectiontype", x.connectiontype.asJson), + ("ifa", x.ifa.asJson), + ("didsha1", x.didsha1.asJson), + ("didmd5", x.didmd5.asJson), + ("dpidsha1", x.dpidsha1.asJson), + ("dpidmd5", x.dpidmd5.asJson), + ("macsha1", x.macsha1.asJson), + ("macmd5", x.macmd5.asJson), + )) + implicit val c16: Codec[OpenRTB.Producer] = + Codec.from((c: HCursor) => for { + id <- c.downField("id").as[Option[String]] + name <- c.downField("name").as[Option[String]] + cat <- c.downField("cat").as[Option[List[String]]] + domain <- c.downField("domain").as[Option[String]] + } yield { + new OpenRTB.Producer(id, name, cat.getOrElse(Nil), domain) + }, (x: OpenRTB.Producer) => Util.toJObject( + ("id", x.id.asJson), + ("name", x.name.asJson), + ("cat", x.cat.asJson), + ("domain", x.domain.asJson) + )) + implicit val c15: Codec[OpenRTB.Content] = + Codec.from((c: HCursor) => for { + id <- c.downField("id").as[Option[String]] + episode <- c.downField("episode").as[Option[Int]] + title <- c.downField("title").as[Option[String]] + series <- c.downField("series").as[Option[String]] + season <- c.downField("season").as[Option[String]] + artist <- c.downField("artist").as[Option[String]] + genre <- c.downField("genre").as[Option[String]] + album <- c.downField("album").as[Option[String]] + isrc <- c.downField("isrc").as[Option[String]] + producer <- c.downField("producer").as[Option[OpenRTB.Producer]] + url <- c.downField("url").as[Option[String]] + cat <- c.downField("cat").as[Option[List[String]]] + prodq <- c.downField("prodq").as[Option[Int]] + videoquality <- c.downField("videoquality").as[Option[Int]] + context <- c.downField("context").as[Option[Int]] + contentrating <- c.downField("contentrating").as[Option[String]] + userrating <- c.downField("userrating").as[Option[String]] + qagmediarating <- c.downField("qagmediarating").as[Option[Int]] + keywords <- c.downField("keywords").as[Option[String]] + livestream <- c.downField("livestream").as[Option[Int]] + sourcerelationship <- c.downField("sourcerelationship").as[Option[Int]] + len <- c.downField("len").as[Option[Int]] + language <- c.downField("language").as[Option[String]] + embeddable <- c.downField("embeddable").as[Option[Int]] + data <- c.downField("data").as[Option[OpenRTB.Data]] + } yield { + new OpenRTB.Content(id, episode, title, series, season, artist, genre, album, isrc, producer, url, + cat.getOrElse(Nil), prodq, videoquality, context, contentrating, userrating, qagmediarating, keywords, + livestream, sourcerelationship, len, language, embeddable, data) + }, (x: OpenRTB.Content) => Util.toJObject( + ("id", x.id.asJson), + ("episode", x.episode.asJson), + ("title", x.title.asJson), + ("series", x.series.asJson), + ("season", x.season.asJson), + ("artist", x.artist.asJson), + ("genre", x.genre.asJson), + ("album", x.album.asJson), + ("isrc", x.isrc.asJson), + ("producer", x.producer.asJson), + ("url", x.url.asJson), + ("cat", x.cat.asJson), + ("prodq", x.prodq.asJson), + ("videoquality", x.videoquality.asJson), + ("context", x.context.asJson), + ("contentrating", x.contentrating.asJson), + ("userrating", x.userrating.asJson), + ("qagmediarating", x.qagmediarating.asJson), + ("keywords", x.keywords.asJson), + ("livestream", x.livestream.asJson), + ("sourcerelationship", x.sourcerelationship.asJson), + ("len", x.len.asJson), + ("language", x.language.asJson), + ("embeddable", x.embeddable.asJson), + ("data", x.data.asJson), + )) + implicit val c14: Codec[OpenRTB.Publisher] = + Codec.from((c: HCursor) => for { + id <- c.downField("id").as[Option[String]] + name <- c.downField("name").as[Option[String]] + cat <- c.downField("cat").as[Option[List[String]]] + domain <- c.downField("domain").as[Option[String]] + } yield { + new OpenRTB.Publisher(id, name, cat.getOrElse(Nil), domain) + }, (x: OpenRTB.Publisher) => Util.toJObject( + ("id", x.id.asJson), + ("name", x.name.asJson), + ("cat", x.cat.asJson), + ("domain", x.domain.asJson) + )) + implicit val c13: Codec[OpenRTB.App] = + Codec.from((c: HCursor) => for { + id <- c.downField("id").as[Option[String]] + name <- c.downField("name").as[Option[String]] + bundle <- c.downField("bundle").as[Option[String]] + domain <- c.downField("domain").as[Option[String]] + storeurl <- c.downField("storeurl").as[Option[String]] + cat <- c.downField("cat").as[Option[List[String]]] + sectioncat <- c.downField("sectioncat").as[Option[List[String]]] + pagecat <- c.downField("pagecat").as[Option[List[String]]] + ver <- c.downField("ver").as[Option[String]] + privacypolicy <- c.downField("privacypolicy").as[Option[Int]] + paid <- c.downField("paid").as[Option[Int]] + publisher <- c.downField("publisher").as[Option[OpenRTB.Publisher]] + content <- c.downField("content").as[Option[OpenRTB.Content]] + keywords <- c.downField("keywords").as[Option[String]] + } yield { + new OpenRTB.App(id, name, bundle, domain, storeurl, cat.getOrElse(Nil), sectioncat.getOrElse(Nil), + pagecat.getOrElse(Nil), ver, privacypolicy, paid, publisher, content, keywords) + }, (x: OpenRTB.App) => Util.toJObject( + ("id", x.id.asJson), + ("name", x.name.asJson), + ("bundle", x.bundle.asJson), + ("domain", x.domain.asJson), + ("storeurl", x.storeurl.asJson), + ("cat", x.cat.asJson), + ("sectioncat", x.sectioncat.asJson), + ("pagecat", x.pagecat.asJson), + ("ver", x.ver.asJson), + ("privacypolicy", x.privacypolicy.asJson), + ("paid", x.paid.asJson), + ("publisher", x.publisher.asJson), + ("content", x.content.asJson), + ("keywords", x.keywords.asJson) + )) + implicit val c12: Codec[OpenRTB.Site] = + Codec.from((c: HCursor) => for { + id <- c.downField("id").as[Option[String]] + name <- c.downField("name").as[Option[String]] + domain <- c.downField("domain").as[Option[String]] + cat <- c.downField("cat").as[Option[List[String]]] + sectioncat <- c.downField("sectioncat").as[Option[List[String]]] + pagecat <- c.downField("pagecat").as[Option[List[String]]] + page <- c.downField("page").as[Option[String]] + ref <- c.downField("ref").as[Option[String]] + search <- c.downField("search").as[Option[String]] + mobile <- c.downField("mobile").as[Option[Int]] + privacypolicy <- c.downField("privacypolicy").as[Option[Int]] + publisher <- c.downField("publisher").as[Option[OpenRTB.Publisher]] + content <- c.downField("content").as[Option[OpenRTB.Content]] + keywords <- c.downField("keywords").as[Option[String]] + } yield { + new OpenRTB.Site(id, name, domain, cat.getOrElse(Nil), sectioncat.getOrElse(Nil), pagecat.getOrElse(Nil), page, + ref, search, mobile, privacypolicy, publisher, content, keywords) + }, (x: OpenRTB.Site) => Util.toJObject( + ("id", x.id.asJson), + ("name", x.name.asJson), + ("domain", x.domain.asJson), + ("cat", x.cat.asJson), + ("sectioncat", x.sectioncat.asJson), + ("pagecat", x.pagecat.asJson), + ("page", x.page.asJson), + ("ref", x.ref.asJson), + ("search", x.search.asJson), + ("mobile", x.mobile.asJson), + ("privacypolicy", x.privacypolicy.asJson), + ("publisher", x.publisher.asJson), + ("content", x.content.asJson), + ("keywords", x.keywords.asJson) + )) + implicit val c11: Codec[OpenRTB.Deal] = + Codec.from((c: HCursor) => for { + id <- c.downField("id").as[String] + bidfloor <- c.downField("bidfloor").as[Option[Double]] + bidfloorcur <- c.downField("bidfloorcur").as[Option[String]] + at <- c.downField("at").as[Option[Int]] + wseat <- c.downField("wseat").as[Option[List[String]]] + wadomain <- c.downField("wadomain").as[Option[List[String]]] + } yield { + new OpenRTB.Deal(id, bidfloor.getOrElse(0.0), bidfloorcur.getOrElse("USD"), at, wseat.getOrElse(Nil), + wadomain.getOrElse(Nil)) + }, (x: OpenRTB.Deal) => Util.toJObject( + ("id", Json.fromString(x.id)), + ("bidfloor", toJson(x.bidfloor, 0.0)), + ("bidfloorcur", toJson(x.bidfloorcur, "USD")), + ("at", x.at.asJson), + ("wseat", x.wseat.asJson), + ("wadomain", x.wadomain.asJson) + )) + implicit val c10: Codec[OpenRTB.Pmp] = + Codec.from((c: HCursor) => for { + private_auction <- c.downField("private_auction").as[Option[Int]] + deals <- c.downField("deals").as[Option[List[OpenRTB.Deal]]] + } yield { + new OpenRTB.Pmp(private_auction.getOrElse(0), deals.getOrElse(Nil)) + }, (x: OpenRTB.Pmp) => Util.toJObject( + ("private_auction", toJson(x.private_auction, 0)), + ("deals", x.deals.asJson) + )) + implicit val c9: Codec[OpenRTB.Format] = + Codec.from(deriveDecoder, (x: OpenRTB.Format) => Util.toJObject( + ("w", x.w.asJson), + ("h", x.h.asJson), + ("wratio", x.wratio.asJson), + ("hratio", x.hratio.asJson), + ("wmin", x.wmin.asJson) + )) + implicit val c8: Codec[OpenRTB.Native] = + Codec.from((c: HCursor) => for { + request <- c.downField("request").as[String] + ver <- c.downField("ver").as[Option[String]] + api <- c.downField("api").as[Option[List[Int]]] + battr <- c.downField("battr").as[Option[List[Int]]] + } yield { + new OpenRTB.Native(request, ver, api.getOrElse(Nil), battr.getOrElse(Nil)) + }, (x: OpenRTB.Native) => Util.toJObject( + ("request", Json.fromString(x.request)), + ("ver", x.ver.asJson), + ("api", x.api.asJson), + ("battr", x.battr.asJson) + )) + implicit val c7: Codec[OpenRTB.Banner] = + Codec.from((c: HCursor) => for { + format <- c.downField("format").as[Option[OpenRTB.Format]] + w <- c.downField("w").as[Option[Int]] + h <- c.downField("h").as[Option[Int]] + wmax <- c.downField("wmax").as[Option[Int]] + hmax <- c.downField("hmax").as[Option[Int]] + wmin <- c.downField("wmin").as[Option[Int]] + hmin <- c.downField("hmin").as[Option[Int]] + btype <- c.downField("btype").as[Option[List[Int]]] + battr <- c.downField("battr").as[Option[List[Int]]] + pos <- c.downField("pos").as[Option[Int]] + mimes <- c.downField("mimes").as[Option[List[String]]] + topframe <- c.downField("topframe").as[Option[Int]] + expdir <- c.downField("expdir").as[Option[List[Int]]] + api <- c.downField("api").as[Option[List[Int]]] + id <- c.downField("id").as[Option[String]] + vcm <- c.downField("vcm").as[Option[Int]] + } yield { + new OpenRTB.Banner(format, w, h, wmax, hmax, wmin, hmin, btype.getOrElse(Nil), battr.getOrElse(Nil), pos, + mimes.getOrElse(Nil), topframe, expdir.getOrElse(Nil), api.getOrElse(Nil), id, vcm) + }, (x: OpenRTB.Banner) => Util.toJObject( + ("format", x.format.asJson), + ("w", x.w.asJson), + ("h", x.h.asJson), + ("wmax", x.wmax.asJson), + ("hmax", x.hmax.asJson), + ("wmin", x.wmin.asJson), + ("hmin", x.hmin.asJson), + ("btype", x.btype.asJson), + ("battr", x.battr.asJson), + ("pos", x.pos.asJson), + ("mimes", x.mimes.asJson), + ("topframe", x.topframe.asJson), + ("expdir", x.expdir.asJson), + ("api", x.api.asJson), + ("id", x.id.asJson), + ("vcm", x.vcm.asJson) + )) + implicit val c6: Codec[OpenRTB.Audio] = + Codec.from((c: HCursor) => for { + mimes <- c.downField("mimes").as[Option[List[String]]] + minduration <- c.downField("minduration").as[Option[Int]] + maxduration <- c.downField("maxduration").as[Option[Int]] + protocols <- c.downField("protocols").as[Option[List[Int]]] + startdelay <- c.downField("startdelay").as[Option[Int]] + sequence <- c.downField("sequence").as[Option[Int]] + battr <- c.downField("battr").as[Option[List[Int]]] + maxextended <- c.downField("maxextended").as[Option[Int]] + minbitrate <- c.downField("minbitrate").as[Option[Int]] + maxbitrate <- c.downField("maxbitrate").as[Option[Int]] + delivery <- c.downField("delivery").as[Option[List[Int]]] + companionad <- c.downField("companionad").as[Option[List[OpenRTB.Banner]]] + api <- c.downField("api").as[Option[List[Int]]] + companiontype <- c.downField("companiontype").as[Option[List[Int]]] + maxseq <- c.downField("maxseq").as[Option[Int]] + feed <- c.downField("feed").as[Option[Int]] + stitched <- c.downField("stitched").as[Option[Int]] + nvol <- c.downField("nvol").as[Option[Int]] + } yield { + new OpenRTB.Audio(mimes.getOrElse(Nil), minduration, maxduration, protocols.getOrElse(Nil), startdelay, + sequence, battr.getOrElse(Nil), maxextended, minbitrate, maxbitrate, delivery.getOrElse(Nil), + companionad.getOrElse(Nil), api.getOrElse(Nil), companiontype.getOrElse(Nil), maxseq, feed, stitched, nvol) + }, (x: OpenRTB.Audio) => Util.toJObject( + ("mimes", x.mimes.asJson), + ("minduration", x.minduration.asJson), + ("maxduration", x.maxduration.asJson), + ("protocols", x.protocols.asJson), + ("startdelay", x.startdelay.asJson), + ("sequence", x.sequence.asJson), + ("battr", x.battr.asJson), + ("maxextended", x.maxextended.asJson), + ("minbitrate", x.minbitrate.asJson), + ("maxbitrate", x.maxbitrate.asJson), + ("delivery", x.delivery.asJson), + ("companionad", x.companionad.asJson), + ("api", x.api.asJson), + ("companiontype", x.companiontype.asJson), + ("maxseq", x.maxseq.asJson), + ("feed", x.feed.asJson), + ("stitched", x.stitched.asJson), + ("nvol", x.nvol.asJson), + )) + implicit val c5: Codec[OpenRTB.Video] = + Codec.from((c: HCursor) => for { + mimes <- c.downField("mimes").as[Option[List[String]]] + minduration <- c.downField("minduration").as[Option[Int]] + maxduration <- c.downField("maxduration").as[Option[Int]] + protocols <- c.downField("protocols").as[Option[List[Int]]] + protocol <- c.downField("protocol").as[Option[Int]] + w <- c.downField("w").as[Option[Int]] + h <- c.downField("h").as[Option[Int]] + startdelay <- c.downField("startdelay").as[Option[Int]] + placement <- c.downField("placement").as[Option[Int]] + linearity <- c.downField("linearity").as[Option[Int]] + skip <- c.downField("skip").as[Option[Int]] + skipmin <- c.downField("skipmin").as[Option[Int]] + skipafter <- c.downField("skipafter").as[Option[Int]] + sequence <- c.downField("sequence").as[Option[Int]] + battr <- c.downField("battr").as[Option[List[Int]]] + maxextended <- c.downField("maxextended").as[Option[Int]] + minbitrate <- c.downField("minbitrate").as[Option[Int]] + maxbitrate <- c.downField("maxbitrate").as[Option[Int]] + boxingallowed <- c.downField("boxingallowed").as[Option[Int]] + playbackmethod <- c.downField("playbackmethod").as[Option[List[Int]]] + playbackend <- c.downField("playbackend").as[Option[Int]] + delivery <- c.downField("delivery").as[Option[List[Int]]] + pos <- c.downField("pos").as[Option[Int]] + companionad <- c.downField("companionad").as[Option[List[OpenRTB.Banner]]] + api <- c.downField("api").as[Option[List[Int]]] + companiontype <- c.downField("companiontype").as[Option[List[Int]]] + } yield { + new OpenRTB.Video(mimes.getOrElse(Nil), minduration, maxduration, protocols.getOrElse(Nil), protocol, w, h, + startdelay, placement, linearity, skip, skipmin.getOrElse(0), skipafter.getOrElse(0), sequence, + battr.getOrElse(Nil), maxextended, minbitrate, maxbitrate, boxingallowed.getOrElse(1), + playbackmethod.getOrElse(Nil), playbackend, delivery.getOrElse(Nil), pos, companionad.getOrElse(Nil), + api.getOrElse(Nil), companiontype.getOrElse(Nil)) + }, (x: OpenRTB.Video) => Util.toJObject( + ("mimes", x.mimes.asJson), + ("minduration", x.minduration.asJson), + ("maxduration", x.maxduration.asJson), + ("protocols", x.protocols.asJson), + ("protocol", x.protocol.asJson), + ("w", x.w.asJson), + ("h", x.h.asJson), + ("startdelay", x.startdelay.asJson), + ("placement", x.placement.asJson), + ("linearity", x.linearity.asJson), + ("skip", x.skip.asJson), + ("skipmin", toJson(x.skipmin, 0)), + ("skipafter", toJson(x.skipafter, 0)), + ("sequence", x.sequence.asJson), + ("battr", x.battr.asJson), + ("maxextended", x.maxextended.asJson), + ("minbitrate", x.minbitrate.asJson), + ("maxbitrate", x.maxbitrate.asJson), + ("boxingallowed", toJson(x.boxingallowed, 1)), + ("playbackmethod", x.playbackmethod.asJson), + ("playbackend", x.playbackend.asJson), + ("delivery", x.delivery.asJson), + ("pos", x.pos.asJson), + ("companionad", x.companionad.asJson), + ("api", x.api.asJson), + ("companiontype", x.companiontype.asJson) + )) + implicit val c4: Codec[OpenRTB.Metric] = + Codec.from(deriveDecoder, (x: OpenRTB.Metric) => Util.toJObject( + ("type", Json.fromString(x.`type`)), + ("value", x.value.asJson), + ("vendor", x.vendor.asJson) + )) + implicit val c3: Codec[OpenRTB.Imp] = + Codec.from((c: HCursor) => for { + id <- c.downField("id").as[String] + metric <- c.downField("metric").as[Option[List[OpenRTB.Metric]]] + banner <- c.downField("banner").as[Option[OpenRTB.Banner]] + video <- c.downField("video").as[Option[OpenRTB.Video]] + audio <- c.downField("audio").as[Option[OpenRTB.Audio]] + native <- c.downField("native").as[Option[OpenRTB.Native]] + pmp <- c.downField("pmp").as[Option[OpenRTB.Pmp]] + displaymanager <- c.downField("displaymanager").as[Option[String]] + displaymanagerver <- c.downField("displaymanagerver").as[Option[String]] + instl <- c.downField("instl").as[Option[Int]] + tagid <- c.downField("tagid").as[Option[String]] + bidfloor <- c.downField("bidfloor").as[Option[Double]] + bidfloorcur <- c.downField("bidfloorcur").as[Option[String]] + clickbrowser <- c.downField("clickbrowser").as[Option[Int]] + secure <- c.downField("secure").as[Option[Int]] + iframebuster <- c.downField("iframebuster").as[Option[List[String]]] + exp <- c.downField("exp").as[Option[Int]] + } yield { + new OpenRTB.Imp(id, metric.getOrElse(Nil), banner, video, audio, native, pmp, displaymanager, displaymanagerver, + instl.getOrElse(0), tagid, bidfloor.getOrElse(0.0), bidfloorcur.getOrElse("USD"), clickbrowser, + secure.getOrElse(0), iframebuster.getOrElse(Nil), exp) + }, (x: OpenRTB.Imp) => Util.toJObject( + ("id", Json.fromString(x.id)), + ("metric", x.metric.asJson), + ("banner", x.banner.asJson), + ("video", x.video.asJson), + ("audio", x.audio.asJson), + ("native", x.native.asJson), + ("pmp", x.pmp.asJson), + ("displaymanager", x.displaymanager.asJson), + ("displaymanagerver", x.displaymanagerver.asJson), + ("instl", toJson(x.instl, 0)), + ("tagid", x.tagid.asJson), + ("bidfloor", toJson(x.bidfloor, 0.0)), + ("bidfloorcur", toJson(x.bidfloorcur, "USD")), + ("secure", toJson(x.secure, 0)), + ("iframebuster", x.iframebuster.asJson), + ("exp", x.exp.asJson) + )) + implicit val c2: Codec[OpenRTB.Reqs] = deriveCodec + implicit val c1: Codec[OpenRTB.Source] = + Codec.from(deriveDecoder, (x: OpenRTB.Source) => Util.toJObject( + ("fd", x.fd.asJson), + ("tid", x.tid.asJson), + ("pchain", x.pchain.asJson) + )) + Codec.from((c: HCursor) => for { + id <- c.downField("id").as[String] + imp <- c.downField("imp").as[Option[List[OpenRTB.Imp]]] + site <- c.downField("site").as[Option[OpenRTB.Site]] + app <- c.downField("app").as[Option[OpenRTB.App]] + device <- c.downField("device").as[Option[OpenRTB.Device]] + user <- c.downField("user").as[Option[OpenRTB.User]] + test <- c.downField("test").as[Option[Int]] + at <- c.downField("at").as[Option[Int]] + tmax <- c.downField("tmax").as[Option[Int]] + wset <- c.downField("wset").as[Option[List[String]]] + bset <- c.downField("bset").as[Option[List[String]]] + allimps <- c.downField("allimps").as[Option[Int]] + cur <- c.downField("cur").as[Option[List[String]]] + wlang <- c.downField("wlang").as[Option[List[String]]] + bcat <- c.downField("bcat").as[Option[List[String]]] + badv <- c.downField("badv").as[Option[List[String]]] + bapp <- c.downField("bapp").as[Option[List[String]]] + source <- c.downField("source").as[Option[OpenRTB.Source]] + reqs <- c.downField("reqs").as[Option[OpenRTB.Reqs]] + } yield { + new OpenRTB.BidRequest(id, imp.getOrElse(Nil), site, app, device, user, test.getOrElse(0), at.getOrElse(2), tmax, + wset.getOrElse(Nil), bset.getOrElse(Nil), allimps.getOrElse(0), cur.getOrElse(Nil), wlang.getOrElse(Nil), + bcat.getOrElse(Nil), badv.getOrElse(Nil), bapp.getOrElse(Nil), source, reqs) + }, (x: OpenRTB.BidRequest) => Util.toJObject( + ("id", Json.fromString(x.id)), + ("imp", x.imp.asJson), + ("site", x.site.asJson), + ("app", x.app.asJson), + ("device", x.device.asJson), + ("user", x.user.asJson), + ("test", toJson(x.test, 0)), + ("at", toJson(x.at, 2)), + ("tmax", x.tmax.asJson), + ("wset", x.wset.asJson), + ("bset", x.bset.asJson), + ("allimps", toJson(x.allimps, 0)), + ("cur", x.cur.asJson), + ("wlang", x.wlang.asJson), + ("bcat", x.bcat.asJson), + ("badv", x.badv.asJson), + ("bapp", x.bapp.asJson), + ("source", x.source.asJson), + ("reqs", x.reqs.asJson) + )) + } + implicit val bitSetC3c: Codec[BitSet] = + Codec.from(Decoder.decodeArray[Int].map(arr => BitSet.fromBitMaskNoCopy(toBitMask(arr, Int.MaxValue /* WARNING: It is an unsafe option for open systems */))), + Encoder.encodeSet[Int].contramapArray((m: BitSet) => m)) + implicit val mutableBitSetC3c: Codec[mutable.BitSet] = + Codec.from(Decoder.decodeArray[Int].map(arr => mutable.BitSet.fromBitMaskNoCopy(toBitMask(arr, Int.MaxValue /* WARNING: It is an unsafe option for open systems */))), + Encoder.encodeSeq[Int].contramapArray((m: mutable.BitSet) => m.toVector)) + implicit val distanceMatrixC3c: Codec[GoogleMapsAPI.DistanceMatrix] = { + implicit val c1: Codec[GoogleMapsAPI.Value] = deriveCodec + implicit val c2: Codec[GoogleMapsAPI.Elements] = deriveCodec + implicit val c3: Codec[GoogleMapsAPI.Rows] = deriveCodec + deriveCodec + } implicit val gitHubActionsAPIC3c: Codec[GitHubActionsAPI.Response] = { implicit val c1: Codec[GitHubActionsAPI.Artifact] = Codec.forProduct9("id", "node_id", "name", "size_in_bytes", "url", "archive_download_url", @@ -26,4 +604,104 @@ object CirceJsoniterCodecs { } deriveCodec } + implicit val extractFieldsC3c: Codec[ExtractFields] = deriveCodec + implicit val geoJSONC3c: Codec[GeoJSON.GeoJSON] = { + implicit val c1: Codec[GeoJSON.Point] = deriveCodec + implicit val c2: Codec[GeoJSON.MultiPoint] = deriveCodec + implicit val c3: Codec[GeoJSON.LineString] = deriveCodec + implicit val c4: Codec[GeoJSON.MultiLineString] = deriveCodec + implicit val c5: Codec[GeoJSON.Polygon] = deriveCodec + implicit val c6: Codec[GeoJSON.MultiPolygon] = deriveCodec + implicit val c7: Codec[GeoJSON.SimpleGeometry] = Codec.from(Decoder.instance(c => + c.downField("type").as[String].flatMap { + case "Point" => c.as[GeoJSON.Point] + case "MultiPoint" => c.as[GeoJSON.MultiPoint] + case "LineString" => c.as[GeoJSON.LineString] + case "MultiLineString" => c.as[GeoJSON.MultiLineString] + case "Polygon" => c.as[GeoJSON.Polygon] + case "MultiPolygon" => c.as[GeoJSON.MultiPolygon] + }), Encoder.instance { + case x: GeoJSON.Point => x.asJson.mapObject(_.+:("type" -> "Point".asJson)) + case x: GeoJSON.MultiPoint => x.asJson.mapObject(_.+:("type" -> "MultiPoint".asJson)) + case x: GeoJSON.LineString => x.asJson.mapObject(_.+:("type" -> "LineString".asJson)) + case x: GeoJSON.MultiLineString => x.asJson.mapObject(_.+:("type" -> "MultiLineString".asJson)) + case x: GeoJSON.Polygon => x.asJson.mapObject(_.+:("type" -> "Polygon".asJson)) + case x: GeoJSON.MultiPolygon => x.asJson.mapObject(_.+:("type" -> "MultiPolygon".asJson)) + }) + implicit val c8: Codec[GeoJSON.GeometryCollection] = deriveCodec + implicit val c9: Codec[GeoJSON.Geometry] = Codec.from(Decoder.instance(c => + c.downField("type").as[String].flatMap { + case "Point" => c.as[GeoJSON.Point] + case "MultiPoint" => c.as[GeoJSON.MultiPoint] + case "LineString" => c.as[GeoJSON.LineString] + case "MultiLineString" => c.as[GeoJSON.MultiLineString] + case "Polygon" => c.as[GeoJSON.Polygon] + case "MultiPolygon" => c.as[GeoJSON.MultiPolygon] + case "GeometryCollection" => c.as[GeoJSON.GeometryCollection] + }), Encoder.instance { + case x: GeoJSON.Point => x.asJson.mapObject(_.+:("type" -> "Point".asJson)) + case x: GeoJSON.MultiPoint => x.asJson.mapObject(_.+:("type" -> "MultiPoint".asJson)) + case x: GeoJSON.LineString => x.asJson.mapObject(_.+:("type" -> "LineString".asJson)) + case x: GeoJSON.MultiLineString => x.asJson.mapObject(_.+:("type" -> "MultiLineString".asJson)) + case x: GeoJSON.Polygon => x.asJson.mapObject(_.+:("type" -> "Polygon".asJson)) + case x: GeoJSON.MultiPolygon => x.asJson.mapObject(_.+:("type" -> "MultiPolygon".asJson)) + case x: GeoJSON.GeometryCollection => x.asJson.mapObject(_.+:("type" -> "GeometryCollection".asJson)) + }) + implicit val c10: Codec[GeoJSON.Feature] = deriveCodec + implicit val c11: Codec[GeoJSON.SimpleGeoJSON] = Codec.from(Decoder.instance(c => + c.downField("type").as[String].flatMap { + case "Feature" => c.as[GeoJSON.Feature] + }), Encoder.instance { + case x: GeoJSON.Feature => x.asJson.mapObject(_.+:("type" -> "Feature".asJson)) + }) + implicit val c12: Codec[GeoJSON.FeatureCollection] = deriveCodec + Codec.from(Decoder.instance(c => + c.downField("type").as[String].flatMap { + case "Feature" => c.as[GeoJSON.Feature] + case "FeatureCollection" => c.as[GeoJSON.FeatureCollection] + }), Encoder.instance { + case x: GeoJSON.Feature => x.asJson.mapObject(_.+:("type" -> "Feature".asJson)) + case x: GeoJSON.FeatureCollection => x.asJson.mapObject(_.+:("type" -> "FeatureCollection".asJson)) + }) + } + implicit val intMapC3c: Codec[IntMap[Boolean]] = + Codec.from(Decoder.decodeMap[Int, Boolean].map(_.foldLeft(IntMap.empty[Boolean])((m, p) => m.updated(p._1, p._2))), + Encoder.encodeMap[Int, Boolean].contramapObject((m: IntMap[Boolean]) => m)) + implicit val longMapC3c: Codec[mutable.LongMap[Boolean]] = + Codec.from(Decoder.decodeMap[Long, Boolean].map(_.foldLeft(new mutable.LongMap[Boolean]) { (m, p) => + m.update(p._1, p._2) + m + }), Encoder.encodeMapLike[Long, Boolean, mutable.Map].contramapObject((m: mutable.LongMap[Boolean]) => m)) + implicit val missingRequiredFieldsC3c: Codec[MissingRequiredFields] = deriveCodec + implicit val nestedStructsC3c: Codec[NestedStructs] = deriveCodec + implicit val suitC3c: Codec[Suit] = Codec.from(Decoder.decodeString.emap { s => + try new Right(Suit.valueOf(s)) catch { + case _: IllegalArgumentException => new Left("Suit") + } + }, Encoder.encodeString.contramap[Suit](_.name)) + implicit val suitADTC3c: Codec[SuitADT] = Codec.from(Decoder.decodeString.map { + val m = Map( + "Hearts" -> Hearts, + "Spades" -> Spades, + "Diamonds" -> Diamonds, + "Clubs" -> Clubs) + s => m.getOrElse(s, throw new IllegalArgumentException("SuitADT")) + }, Encoder.encodeString.contramap(_.toString)) + implicit val suitEnumC3c: Codec[SuitEnum] = Codec.codecForEnumeration(SuitEnum) + implicit val primitivesC3c: Codec[Primitives] = deriveCodec + implicit val tweetC3c: Codec[TwitterAPI.Tweet] = { + implicit val c1: Codec[TwitterAPI.UserMentions] = deriveCodec + implicit val c2: Codec[TwitterAPI.Urls] = deriveCodec + implicit val c3: Codec[TwitterAPI.Entities] = deriveCodec + implicit val c4: Codec[TwitterAPI.Url] = deriveCodec + implicit val c5: Codec[TwitterAPI.UserEntities] = deriveCodec + implicit val c6: Codec[TwitterAPI.User] = deriveCodec + implicit val c7: Codec[TwitterAPI.RetweetedStatus] = deriveCodec + deriveCodec + } + + @inline + private[this] def toJson[T: Encoder](x: T, d: T): Json = + if (x == d) Json.Null + else x.asJson } \ No newline at end of file diff --git a/jsoniter-scala-circe/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/circe/CirceCodecs.scala b/jsoniter-scala-circe/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/circe/CirceCodecs.scala index ae76a74ee..66a06ca29 100644 --- a/jsoniter-scala-circe/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/circe/CirceCodecs.scala +++ b/jsoniter-scala-circe/shared/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/circe/CirceCodecs.scala @@ -10,29 +10,36 @@ import java.time._ * Uses jsoniter-scala for efficient encoding and decoding. */ object CirceCodecs { - private[this] val pool = new ThreadLocal[(Array[Byte], JsonReader, JsonWriter)] { + private[this] val numberPool = new ThreadLocal[JsonReader] { + override def initialValue(): JsonReader = new JsonReader(buf = new Array[Byte](512), charBuf = new Array[Char](512)) + } + private[this] val javaTimePool = new ThreadLocal[(Array[Byte], JsonReader, JsonWriter)] { override def initialValue(): (Array[Byte], JsonReader, JsonWriter) = { - val buf = new Array[Byte](128) // should be enough for the longest zoned date time value + val buf = new Array[Byte](512) // should be enough for the longest zoned date time value buf(0) = '"' - new Tuple3(buf, new JsonReader(buf, charBuf = new Array[Char](128)), new JsonWriter(buf)) + new Tuple3(buf, new JsonReader(buf, charBuf = new Array[Char](512)), new JsonWriter(buf)) } } + private[this] val readerConfig = + ReaderConfig.withAppendHexDumpToParseException(false).withPreferredBufSize(512).withMaxBufSize(512) + .withPreferredCharBufSize(512).withMaxCharBufSize(512) + private[this] val writeConfig = WriterConfig.withPreferredBufSize(512) private[this] class ShortAsciiStringCodec[A](codec: JsonValueCodec[A], name: String) extends Codec[A] { override def apply(x: A): Json = { - val tlb = pool.get + val tlb = javaTimePool.get val buf = tlb._1 - io.circe.JsoniterScalaCodec.asciiStringToJString(buf, tlb._3.write(codec, x, buf, 0, 128, WriterConfig)) + io.circe.JsoniterScalaCodec.asciiStringToJString(buf, tlb._3.write(codec, x, buf, 0, 512, writeConfig)) } override def apply(c: HCursor): Decoder.Result[A] = { - val tlb = pool.get + val tlb = javaTimePool.get val buf = tlb._1 val s = io.circe.JsoniterScalaCodec.stringValue(c) var len = 0 if ((s ne null) && { len = s.length - len <= 126 + len <= 510 } && { var bits, i = 0 while (i < len) { @@ -44,7 +51,7 @@ object CirceCodecs { buf(i + 1) = '"' bits < 0x80 }) { - try return new scala.util.Right(tlb._2.read(codec, buf, 0, len + 2, ReaderConfig)) + try return new scala.util.Right(tlb._2.read(codec, buf, 0, len + 2, readerConfig)) catch { case _: JsonReaderException => } } error(c) @@ -53,21 +60,128 @@ object CirceCodecs { private[this] def error(c: HCursor): Decoder.Result[A] = new scala.util.Left(DecodingFailure(name, c.history)) } - /** - * The circe's codec for `BigInt` values. - * - * @return a JSON value representing the BigInt - */ - implicit val bigIntC3c: Codec[BigInt] = new Codec[BigInt] { - override def apply(x: BigInt): Json = io.circe.JsoniterScalaCodec.jsonValue(x) - - override def apply(c: HCursor): Decoder.Result[BigInt] = { - val bi = io.circe.JsoniterScalaCodec.bigIntValue(c) - if (bi ne null) new scala.util.Right(bi) - else Decoder.decodeBigInt.apply(c) + // codecs for numeric types + implicit val byteC3C: Codec[Byte] = io.circe.JsoniterScalaCodec.byteCodec { + val codec: JsonValueCodec[Byte] = new JsonValueCodec[Byte] { + override def decodeValue(in: JsonReader, default: Byte): Byte = { + val x = in.readByte(isToken = false) + if (in.hasRemaining()) in.decodeError("expected '\"'") + x + } + + override def encodeValue(x: Byte, out: JsonWriter): Unit = out.writeVal(x) + + override def nullValue: Byte = 0 + } + s => + numberPool.get.read(codec, s, readerConfig) + } + implicit val shortC3C: Codec[Short] = io.circe.JsoniterScalaCodec.shortCodec { + val codec: JsonValueCodec[Short] = new JsonValueCodec[Short] { + override def decodeValue(in: JsonReader, default: Short): Short = { + val x = in.readShort(isToken = false) + if (in.hasRemaining()) in.decodeError("expected '\"'") + x + } + + override def encodeValue(x: Short, out: JsonWriter): Unit = out.writeVal(x) + + override def nullValue: Short = 0 + } + s => + numberPool.get.read(codec, s, readerConfig) + } + implicit val intC3C: Codec[Int] = io.circe.JsoniterScalaCodec.intCodec { + val codec: JsonValueCodec[Int] = new JsonValueCodec[Int] { + override def decodeValue(in: JsonReader, default: Int): Int = { + val x = in.readInt(isToken = false) + if (in.hasRemaining()) in.decodeError("expected '\"'") + x + } + + override def encodeValue(x: Int, out: JsonWriter): Unit = out.writeVal(x) + + override def nullValue: Int = 0 + } + s => + numberPool.get.read(codec, s, readerConfig) + } + implicit val longC3C: Codec[Long] = io.circe.JsoniterScalaCodec.longCodec { + val codec: JsonValueCodec[Long] = new JsonValueCodec[Long] { + override def decodeValue(in: JsonReader, default: Long): Long = { + val x = in.readLong(isToken = false) + if (in.hasRemaining()) in.decodeError("expected '\"'") + x + } + + override def encodeValue(x: Long, out: JsonWriter): Unit = out.writeVal(x) + + override def nullValue: Long = 0 } + s => + numberPool.get.read(codec, s, readerConfig) } + implicit val floatC3C: Codec[Float] = io.circe.JsoniterScalaCodec.floatCodec { + val codec: JsonValueCodec[Float] = new JsonValueCodec[Float] { + override def decodeValue(in: JsonReader, default: Float): Float = { + val x = in.readFloat(isToken = false) + if (in.hasRemaining()) in.decodeError("expected '\"'") + x + } + override def encodeValue(x: Float, out: JsonWriter): Unit = out.writeVal(x) + + override def nullValue: Float = 0 + } + s => + numberPool.get.read(codec, s, readerConfig) + } + implicit val doubleC3C: Codec[Double] = io.circe.JsoniterScalaCodec.doubleCodec { + val codec: JsonValueCodec[Double] = new JsonValueCodec[Double] { + override def decodeValue(in: JsonReader, default: Double): Double = { + val x = in.readDouble(isToken = false) + if (in.hasRemaining()) in.decodeError("expected '\"'") + x + } + + override def encodeValue(x: Double, out: JsonWriter): Unit = out.writeVal(x) + + override def nullValue: Double = 0 + } + s => + numberPool.get.read(codec, s, readerConfig) + } + implicit val bigIntC3C: Codec[BigInt] = io.circe.JsoniterScalaCodec.bigIntCodec { + val codec: JsonValueCodec[BigInt] = new JsonValueCodec[BigInt] { + override def decodeValue(in: JsonReader, default: BigInt): BigInt = { + val x = in.readBigInt(isToken = false, default, JsonReader.bigIntDigitsLimit) + if (in.hasRemaining()) in.decodeError("expected '\"'") + x + } + + override def encodeValue(x: BigInt, out: JsonWriter): Unit = out.writeVal(x) + + override def nullValue: BigInt = null + } + s => + numberPool.get.read(codec, s, readerConfig) + } + implicit val bigDecimalC3C: Codec[BigDecimal] = io.circe.JsoniterScalaCodec.bigDecimalCodec { + val codec: JsonValueCodec[BigDecimal] = new JsonValueCodec[BigDecimal] { + override def decodeValue(in: JsonReader, default: BigDecimal): BigDecimal = { + val x = in.readBigDecimal(isToken = false, default, JsonReader.bigDecimalMathContext, + JsonReader.bigDecimalScaleLimit, JsonReader.bigDecimalDigitsLimit) + if (in.hasRemaining()) in.decodeError("expected '\"'") + x + } + + override def encodeValue(x: BigDecimal, out: JsonWriter): Unit = out.writeVal(x) + + override def nullValue: BigDecimal = null + } + s => + numberPool.get.read(codec, s, readerConfig) + } // codecs for java.time.* types implicit val durationC3C: Codec[Duration] = new ShortAsciiStringCodec(new JsonValueCodec[Duration] { override def decodeValue(in: JsonReader, default: Duration): Duration = in.readDuration(default) @@ -75,85 +189,82 @@ object CirceCodecs { override def encodeValue(x: Duration, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: Duration = null - }, "duration") + }, "Duration") implicit val instantC3C: Codec[Instant] = new ShortAsciiStringCodec(new JsonValueCodec[Instant] { override def decodeValue(in: JsonReader, default: Instant): Instant = in.readInstant(default) override def encodeValue(x: Instant, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: Instant = null - }, "instant") + }, "Instant") implicit val localDateC3C: Codec[LocalDate] = new ShortAsciiStringCodec(new JsonValueCodec[LocalDate] { override def decodeValue(in: JsonReader, default: LocalDate): LocalDate = in.readLocalDate(default) override def encodeValue(x: LocalDate, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: LocalDate = null - }, "local date") + }, "LocalDate") implicit val localDateTimeC3C: Codec[LocalDateTime] = new ShortAsciiStringCodec(new JsonValueCodec[LocalDateTime] { override def decodeValue(in: JsonReader, default: LocalDateTime): LocalDateTime = in.readLocalDateTime(default) override def encodeValue(x: LocalDateTime, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: LocalDateTime = null - }, "local date time") + }, "LocalDateTime") implicit val localTimeC3C: Codec[LocalTime] = new ShortAsciiStringCodec(new JsonValueCodec[LocalTime] { override def decodeValue(in: JsonReader, default: LocalTime): LocalTime = in.readLocalTime(default) override def encodeValue(x: LocalTime, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: LocalTime = null - }, "local time") + }, "LocalTime") implicit val monthDayC3C: Codec[MonthDay] = new ShortAsciiStringCodec(new JsonValueCodec[MonthDay] { override def decodeValue(in: JsonReader, default: MonthDay): MonthDay = in.readMonthDay(default) override def encodeValue(x: MonthDay, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: MonthDay = null - }, "month day") + }, "MonthDay") implicit val offsetDateTimeC3C: Codec[OffsetDateTime] = new ShortAsciiStringCodec(new JsonValueCodec[OffsetDateTime] { override def decodeValue(in: JsonReader, default: OffsetDateTime): OffsetDateTime = in.readOffsetDateTime(default) override def encodeValue(x: OffsetDateTime, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: OffsetDateTime = null - }, "offset date time") + }, "OffsetDateTime") implicit val offsetTimeC3C: Codec[OffsetTime] = new ShortAsciiStringCodec(new JsonValueCodec[OffsetTime] { override def decodeValue(in: JsonReader, default: OffsetTime): OffsetTime = in.readOffsetTime(default) override def encodeValue(x: OffsetTime, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: OffsetTime = null - }, "offset time") + }, "OffsetTime") implicit val periodC3C: Codec[Period] = new ShortAsciiStringCodec(new JsonValueCodec[Period] { override def decodeValue(in: JsonReader, default: Period): Period = in.readPeriod(default) override def encodeValue(x: Period, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: Period = null - }, "period") + }, "Period") implicit val yearMonthC3C: Codec[YearMonth] = new ShortAsciiStringCodec(new JsonValueCodec[YearMonth] { override def decodeValue(in: JsonReader, default: YearMonth): YearMonth = in.readYearMonth(default) override def encodeValue(x: YearMonth, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: YearMonth = null - }, "year month") - implicit val (yearD5r: Decoder[Year], yearE5r: Encoder[Year]) = { - val codec = new ShortAsciiStringCodec(new JsonValueCodec[Year] { + }, "YearMonth") + implicit val yearC3C: Codec[Year] = new ShortAsciiStringCodec(new JsonValueCodec[Year] { override def decodeValue(in: JsonReader, default: Year): Year = in.readYear(default) override def encodeValue(x: Year, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: Year = null - }, "year") - (codec, codec) - } + }, "Year") implicit val zonedDateTimeC3C: Codec[ZonedDateTime] = new ShortAsciiStringCodec(new JsonValueCodec[ZonedDateTime] { override def decodeValue(in: JsonReader, default: ZonedDateTime): ZonedDateTime = in.readZonedDateTime(default) override def encodeValue(x: ZonedDateTime, out: JsonWriter): Unit = out.writeVal(x) override def nullValue: ZonedDateTime = null - }, "zoned date time") + }, "ZonedDateTime") } \ No newline at end of file diff --git a/jsoniter-scala-circe/shared/src/main/scala/io/circe/JsoniterScalaCodec.scala b/jsoniter-scala-circe/shared/src/main/scala/io/circe/JsoniterScalaCodec.scala index 9d95168eb..99c259104 100644 --- a/jsoniter-scala-circe/shared/src/main/scala/io/circe/JsoniterScalaCodec.scala +++ b/jsoniter-scala-circe/shared/src/main/scala/io/circe/JsoniterScalaCodec.scala @@ -1,10 +1,12 @@ package io.circe import com.github.plokhotnyuk.jsoniter_scala.core._ +import io.circe.Decoder.Result import io.circe.Json._ import java.nio.charset.StandardCharsets import java.util import scala.collection.immutable.VectorBuilder +import scala.util.control.NonFatal object JsoniterScalaCodec { /** @@ -89,38 +91,179 @@ object JsoniterScalaCodec { case _ => null } - /** - * Extracts a `BigInt` value from a JSON cursor. - * - * @param c the JSON cursor - * @return the `BigInt` value, or null if the cursor does not point to a number with an integer value - */ - @inline - def bigIntValue(c: HCursor): BigInt = c.value match { - case n: JNumber => n.value match { - case jl: JsonLong => BigInt(jl.value) - case jbd: JsonBigDecimal => - val bd = jbd.value - if (bd.scale == 0) new BigInt(bd.unscaledValue) - else null - case _ => null + def byteCodec(fromString: String => Byte): Codec[Byte] = new Codec[Byte] { + final def apply(c: HCursor): Result[Byte] = c.value match { + case n: JNumber => + n.value match { + case jl: JsonLong => + val l = jl.value + val b = l.toByte + if (b == l) return new Right(b) + case y => + val ol = y.toLong + if (ol ne None) { + val l = ol.get + val b = l.toByte + if (b == l) return new Right(b) + } + } + fail(c) + case s: JString => try new Right(fromString(s.value)) catch { + case NonFatal(_) => fail(c) + } + case _ => fail(c) } - case _ => null + + final def apply(x: Byte): Json = new JNumber(new JsonLong(x)) + + private[this] def fail(c: HCursor): Result[Byte] = new Left(DecodingFailure("Byte", c.history)) } + def shortCodec(fromString: String => Short): Codec[Short] = new Codec[Short] { + final def apply(c: HCursor): Result[Short] = c.value match { + case n: JNumber => + n.value match { + case jl: JsonLong => + val l = jl.value + val s = l.toShort + if (s == l) return new Right(s) + case y => + val ol = y.toLong + if (ol ne None) { + val l = ol.get + val s = l.toShort + if (s == l) return new Right(s) + } + } + fail(c) + case s: JString => try new Right(fromString(s.value)) catch { + case NonFatal(_) => fail(c) + } + case _ => fail(c) + } - /** - * Encodes a `BigInt` as a JSON number. - * - * Uses a `JsonLong` if the value fits in a Long, otherwise uses a `JsonBigDecimal`. - * - * @param x the BigInt to encode - * @return a JSON number representing the BigInt - */ - @inline - def jsonValue(x: BigInt): Json = new JNumber({ - if (x.isValidLong) new JsonLong(x.longValue) - else new JsonBigDecimal(new java.math.BigDecimal(x.bigInteger)) - }) + final def apply(x: Short): Json = new JNumber(new JsonLong(x)) + + private[this] def fail(c: HCursor): Result[Short] = new Left(DecodingFailure("Short", c.history)) + } + def intCodec(fromString: String => Int): Codec[Int] = new Codec[Int] { + final def apply(c: HCursor): Result[Int] = c.value match { + case n: JNumber => + n.value match { + case jl: JsonLong => + val l = jl.value + val i = l.toInt + if (i == l) return new Right(i) + case y => + val ol = y.toLong + if (ol ne None) { + val l = ol.get + val i = l.toInt + if (i == l) return new Right(i) + } + } + fail(c) + case s: JString => try new Right(fromString(s.value)) catch { + case NonFatal(_) => fail(c) + } + case _ => fail(c) + } + + final def apply(x: Int): Json = new JNumber(new JsonLong(x)) + + private[this] def fail(c: HCursor): Result[Int] = new Left(DecodingFailure("Int", c.history)) + } + def longCodec(fromString: String => Long): Codec[Long] = new Codec[Long] { + final def apply(c: HCursor): Result[Long] = c.value match { + case n: JNumber => n.value match { + case jl: JsonLong => new Right(jl.value) + case x => + val ol = x.toLong + if (ol ne None) new Right(ol.get) + else fail(c) + } + case s: JString => try new Right(fromString(s.value)) catch { + case NonFatal(_) => fail(c) + } + case _ => fail(c) + } + + final def apply(x: Long): Json = new JNumber(new JsonLong(x)) + + private[this] def fail(c: HCursor): Result[Long] = new Left(DecodingFailure("Long", c.history)) + } + def floatCodec(fromString: String => Float): Codec[Float] = new Codec[Float] { + final def apply(c: HCursor): Result[Float] = c.value match { + case n: JNumber => new Right(n.value.toFloat) + case s: JString => try new Right(fromString(s.value)) catch { + case NonFatal(_) => fail(c) + } + case _ => fail(c) + } + + final def apply(x: Float): Json = new JNumber(new JsonFloat(x)) + + private[this] def fail(c: HCursor): Result[Float] = new Left(DecodingFailure("Float", c.history)) + } + def doubleCodec(fromString: String => Double): Codec[Double] = new Codec[Double] { + final def apply(c: HCursor): Result[Double] = c.value match { + case n: JNumber => new Right(n.value.toDouble) + case s: JString => try new Right(fromString(s.value)) catch { + case NonFatal(_) => fail(c) + } + case _ => fail(c) + } + + final def apply(x: Double): Json = new JNumber(new JsonDouble(x)) + + private[this] def fail(c: HCursor): Result[Double] = new Left(DecodingFailure("Double", c.history)) + } + def bigIntCodec(fromString: String => BigInt): Codec[BigInt] = new Codec[BigInt] { + final def apply(c: HCursor): Result[BigInt] = try c.value match { + case n: JNumber => n.value match { + case jl: JsonLong => new Right(BigInt(jl.value)) + case jbd: JsonBigDecimal => new Right(new BigInt({ + val bd = jbd.value + if (bd.scale == 0) bd.unscaledValue + else bd.toBigIntegerExact + })) + case x => + val obi = x.toBigInt + if (obi ne None) new Right(obi.get) + else fail(c) + } + case s: JString => new Right(fromString(s.value)) + case _ => fail(c) + } catch { + case NonFatal(_) => fail(c) + } + + final def apply(x: BigInt): Json = new JNumber({ + if (x.isValidLong) new JsonLong(x.longValue) + else new JsonBigDecimal(new java.math.BigDecimal(x.bigInteger)) + }) + + private[this] def fail(c: HCursor): Result[BigInt] = new Left(DecodingFailure("BigInt", c.history)) + } + def bigDecimalCodec(fromString: String => BigDecimal): Codec[BigDecimal] = new Codec[BigDecimal] { + final def apply(c: HCursor): Result[BigDecimal] = c.value match { + case n: JNumber => n.value match { + case jl: JsonLong => new Right(new BigDecimal(new java.math.BigDecimal(jl.value))) + case jbd: JsonBigDecimal => new Right(new BigDecimal(jbd.value, JsonReader.bigDecimalMathContext)) + case x => x.toBigDecimal match { + case Some(v) => new Right(v.apply(JsonReader.bigDecimalMathContext)) + case _ => fail(c) + } + } + case s: JString => try new Right(fromString(s.value)) catch { + case NonFatal(_) => fail(c) + } + case _ => fail(c) + } + + final def apply(x: BigDecimal): Json = new JNumber(new JsonBigDecimal(x.bigDecimal)) + + private[this] def fail(c: HCursor): Result[BigDecimal] = new Left(DecodingFailure("BigDecimal", c.history)) + } } /** @@ -134,11 +277,11 @@ object JsoniterScalaCodec { * @return The JSON codec */ final class JsoniterScalaCodec( - maxDepth: Int, - initialSize: Int, - doSerialize: Json => Boolean, - numberParser: JsonReader => Json, - numberSerializer: (JsonWriter, JsonNumber) => Unit) extends JsonValueCodec[Json] { + maxDepth: Int, + initialSize: Int, + doSerialize: Json => Boolean, + numberParser: JsonReader => Json, + numberSerializer: (JsonWriter, JsonNumber) => Unit) extends JsonValueCodec[Json] { /** * An auxiliary constructor for backward binary compatibility. diff --git a/jsoniter-scala-circe/shared/src/test/scala/com/github/plokhotnyuk/jsoniter_scala/circe/CirceCodecsSpec.scala b/jsoniter-scala-circe/shared/src/test/scala/com/github/plokhotnyuk/jsoniter_scala/circe/CirceCodecsSpec.scala index 016efd350..833443f57 100644 --- a/jsoniter-scala-circe/shared/src/test/scala/com/github/plokhotnyuk/jsoniter_scala/circe/CirceCodecsSpec.scala +++ b/jsoniter-scala-circe/shared/src/test/scala/com/github/plokhotnyuk/jsoniter_scala/circe/CirceCodecsSpec.scala @@ -5,55 +5,171 @@ import org.scalatest.matchers.should.Matchers import org.scalatest.wordspec.AnyWordSpec import java.time._ import com.github.plokhotnyuk.jsoniter_scala.circe.CirceCodecs._ +import com.github.plokhotnyuk.jsoniter_scala.core.JsonReader +import org.scalacheck.Arbitrary.arbitrary +import org.scalatestplus.scalacheck.ScalaCheckPropertyChecks -class CirceCodecsSpec extends AnyWordSpec with Matchers { +class CirceCodecsSpec extends AnyWordSpec with Matchers with ScalaCheckPropertyChecks { "CirceCodecsSpec codecs" should { - "decode and encode duration" in { - verifyDecoding[Duration]("duration", Duration.ofMillis(System.currentTimeMillis())) + "decode and encode Byte" in { + Decoder[Byte].decodeJson(Json.fromString("001")).getOrElse(null) shouldBe 1.toByte + Decoder[Byte].decodeJson(Json.fromString(" 1")) shouldBe Left(DecodingFailure("Byte", Nil)) + Decoder[Byte].decodeJson(Json.fromString("1 ")) shouldBe Left(DecodingFailure("Byte", Nil)) + forAll(arbitrary[Byte], minSuccessful(10000)) { x => + Decoder[Byte].decodeJson(Json.fromString(x.toString)).getOrElse(null) shouldBe x + } + forAll(arbitrary[Byte], minSuccessful(10000)) { x => + Decoder[Byte].decodeJson(Json.fromInt(x)).getOrElse(null) shouldBe x + } + forAll(arbitrary[Byte], minSuccessful(10000)) { x => + Encoder[Byte].apply(x) shouldBe Json.fromInt(x) + } + } + "decode and encode Short" in { + Decoder[Short].decodeJson(Json.fromString("001")).getOrElse(null) shouldBe 1.toShort + Decoder[Short].decodeJson(Json.fromString(" 1")) shouldBe Left(DecodingFailure("Short", Nil)) + Decoder[Short].decodeJson(Json.fromString("1 ")) shouldBe Left(DecodingFailure("Short", Nil)) + forAll(arbitrary[Short], minSuccessful(10000)) { x => + Decoder[Short].decodeJson(Json.fromString(x.toString)).getOrElse(null) shouldBe x + } + forAll(arbitrary[Short], minSuccessful(10000)) { x => + Decoder[Short].decodeJson(Json.fromInt(x)).getOrElse(null) shouldBe x + } + forAll(arbitrary[Short], minSuccessful(10000)) { x => + Encoder[Short].apply(x) shouldBe Json.fromInt(x) + } + } + "decode and encode Int" in { + Decoder[Int].decodeJson(Json.fromString("001")).getOrElse(null) shouldBe 1 + Decoder[Int].decodeJson(Json.fromString(" 1")) shouldBe Left(DecodingFailure("Int", Nil)) + Decoder[Int].decodeJson(Json.fromString("1 ")) shouldBe Left(DecodingFailure("Int", Nil)) + forAll(arbitrary[Int], minSuccessful(10000)) { x => + Decoder[Int].decodeJson(Json.fromString(x.toString)).getOrElse(null) shouldBe x + } + forAll(arbitrary[Int], minSuccessful(10000)) { x => + Decoder[Int].decodeJson(Json.fromInt(x)).getOrElse(null) shouldBe x + } + forAll(arbitrary[Int], minSuccessful(10000)) { x => + Encoder[Int].apply(x) shouldBe Json.fromInt(x) + } + } + "decode and encode Long" in { + Decoder[Long].decodeJson(Json.fromString("001")).getOrElse(null) shouldBe 1L + Decoder[Long].decodeJson(Json.fromString(" 1")) shouldBe Left(DecodingFailure("Long", Nil)) + Decoder[Long].decodeJson(Json.fromString("1 ")) shouldBe Left(DecodingFailure("Long", Nil)) + forAll(arbitrary[Long], minSuccessful(10000)) { x => + Decoder[Long].decodeJson(Json.fromString(x.toString)).getOrElse(null) shouldBe x + } + forAll(arbitrary[Long], minSuccessful(10000)) { x => + Decoder[Long].decodeJson(Json.fromLong(x)).getOrElse(null) shouldBe x + } + forAll(arbitrary[Long], minSuccessful(10000)) { x => + Encoder[Long].apply(x) shouldBe Json.fromLong(x) + } + } + "decode and encode Float" in { + Decoder[Float].decodeJson(Json.fromString("001.0")).getOrElse(null) shouldBe 1.0f + Decoder[Float].decodeJson(Json.fromString(" 1.0")) shouldBe Left(DecodingFailure("Float", Nil)) + Decoder[Float].decodeJson(Json.fromString("1.0 ")) shouldBe Left(DecodingFailure("Float", Nil)) + forAll(arbitrary[Float], minSuccessful(10000)) { x => + Decoder[Float].decodeJson(Json.fromString(x.toString)).getOrElse(null) shouldBe x + } + forAll(arbitrary[Float], minSuccessful(10000)) { x => + Json.fromFloat(x).foreach(Decoder[Float].decodeJson(_).getOrElse(null) shouldBe x) + } + forAll(arbitrary[Float], minSuccessful(10000)) { x => + Encoder[Float].apply(x) shouldBe Json.fromFloat(x).getOrElse(Json.Null) + } + } + "decode and encode Double" in { + Decoder[Double].decodeJson(Json.fromString("001.0")).getOrElse(null) shouldBe 1.0 + Decoder[Double].decodeJson(Json.fromString(" 1.0")) shouldBe Left(DecodingFailure("Double", Nil)) + Decoder[Double].decodeJson(Json.fromString("1.0 ")) shouldBe Left(DecodingFailure("Double", Nil)) + forAll(arbitrary[Double], minSuccessful(10000)) { x => + Decoder[Double].decodeJson(Json.fromString(x.toString)).getOrElse(null) shouldBe x + } + forAll(arbitrary[Double], minSuccessful(10000)) { x => + Json.fromDouble(x).foreach(Decoder[Double].decodeJson(_).getOrElse(null) shouldBe x) + } + forAll(arbitrary[Double], minSuccessful(10000)) { x => + Encoder[Double].apply(x) shouldBe Json.fromDouble(x).getOrElse(Json.Null) + } + } + "decode and encode BigInt" in { + Decoder[BigInt].decodeJson(Json.fromString("001")).getOrElse(null) shouldBe BigInt(1) + Decoder[BigInt].decodeJson(Json.fromString(" 1")) shouldBe Left(DecodingFailure("BigInt", Nil)) + Decoder[BigInt].decodeJson(Json.fromString("1 ")) shouldBe Left(DecodingFailure("BigInt", Nil)) + forAll(arbitrary[BigInt], minSuccessful(10000)) { x => + Decoder[BigInt].decodeJson(Json.fromString(x.toString)).getOrElse(null) shouldBe x + } + forAll(arbitrary[BigInt], minSuccessful(10000)) { x => + Decoder[BigInt].decodeJson(Json.fromBigInt(x)).getOrElse(null) shouldBe x + } + forAll(arbitrary[BigInt], minSuccessful(10000)) { x => + Encoder[BigInt].apply(x) shouldBe Json.fromBigInt(x) + } + } + "decode and encode BigDecimal" in { + Decoder[BigDecimal].decodeJson(Json.fromString("001.0")).getOrElse(null) shouldBe BigDecimal(1.0) + Decoder[BigDecimal].decodeJson(Json.fromString(" 1.0")) shouldBe Left(DecodingFailure("BigDecimal", Nil)) + Decoder[BigDecimal].decodeJson(Json.fromString("1.0 ")) shouldBe Left(DecodingFailure("BigDecimal", Nil)) + forAll(arbitrary[BigDecimal], minSuccessful(10000)) { x => + val y = x.apply(JsonReader.bigDecimalMathContext) + Decoder[BigDecimal].decodeJson(Json.fromString(x.toString)).getOrElse(null) shouldBe y + } + forAll(arbitrary[BigDecimal], minSuccessful(10000)) { x => + Decoder[BigDecimal].decodeJson(Json.fromBigDecimal(x)).getOrElse(null) shouldBe x + } + forAll(arbitrary[BigDecimal], minSuccessful(10000)) { x => + Encoder[BigDecimal].apply(x) shouldBe Json.fromBigDecimal(x) + } + } + "decode and encode Duration" in { + verifyDecoding[Duration]("Duration", Duration.ofMillis(System.currentTimeMillis())) verifyEncoding[Duration](Duration.ofMillis(System.currentTimeMillis())) } - "decode and encode instant" in { - verifyDecoding[Instant]("instant", Instant.now()) + "decode and encode Instant" in { + verifyDecoding[Instant]("Instant", Instant.now()) verifyEncoding[Instant](Instant.now()) } - "decode and encode local date" in { - verifyDecoding[LocalDate]("local date", LocalDate.now()) + "decode and encode LocalDate" in { + verifyDecoding[LocalDate]("LocalDate", LocalDate.now()) verifyEncoding[LocalDate](LocalDate.now()) } - "decode and encode local date time" in { - verifyDecoding[LocalDateTime]("local date time", LocalDateTime.now()) + "decode and encode LocalDateTime" in { + verifyDecoding[LocalDateTime]("LocalDateTime", LocalDateTime.now()) verifyEncoding[LocalDateTime](LocalDateTime.now()) } - "decode and encode local time" in { - verifyDecoding[LocalTime]("local time", LocalTime.now()) + "decode and encode LocalTime" in { + verifyDecoding[LocalTime]("LocalTime", LocalTime.now()) verifyEncoding[LocalTime](LocalTime.now()) } - "decode and encode month day" in { - verifyDecoding[MonthDay]("month day", MonthDay.now()) + "decode and encode MonthDay" in { + verifyDecoding[MonthDay]("MonthDay", MonthDay.now()) verifyEncoding[MonthDay](MonthDay.now()) } - "decode and encode offset date time" in { - verifyDecoding[OffsetDateTime]("offset date time", OffsetDateTime.now()) + "decode and encode OffsetDateTime" in { + verifyDecoding[OffsetDateTime]("OffsetDateTime", OffsetDateTime.now()) verifyEncoding[OffsetDateTime](OffsetDateTime.now()) } - "decode and encode offset time" in { - verifyDecoding[OffsetTime]("offset time", OffsetTime.now()) + "decode and encode OffsetTime" in { + verifyDecoding[OffsetTime]("OffsetTime", OffsetTime.now()) verifyEncoding[OffsetTime](OffsetTime.now()) } - "decode and encode period" in { - verifyDecoding[Period]("period", Period.ofYears(Year.now().getValue)) + "decode and encode Period" in { + verifyDecoding[Period]("Period", Period.ofYears(Year.now().getValue)) verifyEncoding[Period](Period.ofYears(Year.now().getValue)) } - "decode and encode year month" in { - verifyDecoding[YearMonth]("year month", YearMonth.now()) + "decode and encode YearMonth" in { + verifyDecoding[YearMonth]("YearMonth", YearMonth.now()) verifyEncoding[YearMonth](YearMonth.now()) } - "decode and encode year" in { - verifyDecoding[Year]("year", Year.now()) + "decode and encode Year" in { + verifyDecoding[Year]("Year", Year.now()) verifyEncoding[Year](Year.now()) } - "decode and encode zoned date time" in { - verifyDecoding[ZonedDateTime]("zoned date time", ZonedDateTime.now()) + "decode and encode ZonedDateTime" in { + verifyDecoding[ZonedDateTime]("ZonedDateTime", ZonedDateTime.now()) verifyEncoding[ZonedDateTime](ZonedDateTime.now()) } } diff --git a/jsoniter-scala-core/js/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala b/jsoniter-scala-core/js/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala index 65373534f..a7e69dfb2 100644 --- a/jsoniter-scala-core/js/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala +++ b/jsoniter-scala-core/js/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala @@ -381,7 +381,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsByte(): Byte = { nextTokenOrError('"', head) - val x = parseByte(isToken = false) + val x = readByte(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -410,7 +410,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsShort(): Short = { nextTokenOrError('"', head) - val x = parseShort(isToken = false) + val x = readShort(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -424,7 +424,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsInt(): Int = { nextTokenOrError('"', head) - val x = parseInt(isToken = false) + val x = readInt(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -438,7 +438,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsLong(): Long = { nextTokenOrError('"', head) - val x = parseLong(isToken = false) + val x = readLong(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -452,7 +452,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsFloat(): Float = { nextTokenOrError('"', head) - val x = parseFloat(isToken = false) + val x = readFloat(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -466,7 +466,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsDouble(): Double = { nextTokenOrError('"', head) - val x = parseDouble(isToken = false) + val x = readDouble(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -491,7 +491,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsBigInt(digitsLimit: Int): BigInt = { nextTokenOrError('"', head) - val x = parseBigInt(isToken = false, null, digitsLimit) + val x = readBigInt(isToken = false, null, digitsLimit) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -520,7 +520,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsBigDecimal(mc: MathContext, scaleLimit: Int, digitsLimit: Int): BigDecimal = { nextTokenOrError('"', head) - val x = parseBigDecimal(isToken = false, null, mc, scaleLimit, digitsLimit) + val x = readBigDecimal(isToken = false, null, mc, scaleLimit, digitsLimit) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -546,7 +546,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or dection of leading zero or * illegal format of JSON value or exceeding capacity of `Byte` */ - def readByte(): Byte = parseByte(isToken = true) + def readByte(): Byte = readByte(isToken = true) /** * Reads a JSON string value into a `Char` value. @@ -569,7 +569,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value or exceeding capacity of `Short` */ - def readShort(): Short = parseShort(isToken = true) + def readShort(): Short = readShort(isToken = true) /** * Reads a JSON value into a `Int` value. @@ -578,7 +578,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value or exceeding capacity of `Int` */ - def readInt(): Int = parseInt(isToken = true) + def readInt(): Int = readInt(isToken = true) /** * Reads a JSON number value into a `Long` value. @@ -587,7 +587,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value or exceeding capacity of `Long` */ - def readLong(): Long = parseLong(isToken = true) + def readLong(): Long = readLong(isToken = true) /** * Reads a JSON number value into a `Double` value. @@ -596,7 +596,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value */ - def readDouble(): Double = parseDouble(isToken = true) + def readDouble(): Double = readDouble(isToken = true) /** * Reads a JSON number value into a `Float` value. @@ -605,7 +605,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value */ - def readFloat(): Float = parseFloat(isToken = true) + def readFloat(): Float = readFloat(isToken = true) /** * Reads a JSON number value into a `BigInt` instance with the default limit of allowed digits. @@ -618,7 +618,7 @@ final class JsonReader private[jsoniter_scala]( * illegal format of JSON value or exceeding of the default limit or * when both the JSON value and the provided default value are `null` */ - def readBigInt(default: BigInt): BigInt = parseBigInt(isToken = true, default, bigIntDigitsLimit) + def readBigInt(default: BigInt): BigInt = readBigInt(isToken = true, default, bigIntDigitsLimit) /** * Reads a JSON number value into a `BigInt` instance with the provided limit of allowed digits. @@ -632,7 +632,7 @@ final class JsonReader private[jsoniter_scala]( * illegal format of JSON value or exceeding of the default limit or * when both the JSON value and the provided default value are `null` */ - def readBigInt(default: BigInt, digitsLimit: Int): BigInt = parseBigInt(isToken = true, default, digitsLimit) + def readBigInt(default: BigInt, digitsLimit: Int): BigInt = readBigInt(isToken = true, default, digitsLimit) /** * Reads a JSON number value into a `BigDecimal` instance with the default limit of allowed digits for mantissa, @@ -647,7 +647,7 @@ final class JsonReader private[jsoniter_scala]( * when both the JSON value and the provided default value are `null` */ def readBigDecimal(default: BigDecimal): BigDecimal = - parseBigDecimal(isToken = true, default, bigDecimalMathContext, bigDecimalScaleLimit, bigDecimalDigitsLimit) + readBigDecimal(isToken = true, default, bigDecimalMathContext, bigDecimalScaleLimit, bigDecimalDigitsLimit) /** * Reads a JSON number value into a `BigDecimal` instance with the provided limit of allowed digits for mantissa, @@ -665,7 +665,7 @@ final class JsonReader private[jsoniter_scala]( * when both the JSON value and the provided default value are `null` */ def readBigDecimal(default: BigDecimal, mc: MathContext, scaleLimit: Int, digitsLimit: Int): BigDecimal = - parseBigDecimal(isToken = true, default, mc, scaleLimit, digitsLimit) + readBigDecimal(isToken = true, default, mc, scaleLimit, digitsLimit) /** * Reads a JSON string value into a `String` instance. @@ -965,7 +965,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsByte(): Byte = { nextTokenOrError('"', head) - val x = parseByte(isToken = false) + val x = readByte(isToken = false) nextByteOrError('"', head) x } @@ -979,7 +979,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsShort(): Short = { nextTokenOrError('"', head) - val x = parseShort(isToken = false) + val x = readShort(isToken = false) nextByteOrError('"', head) x } @@ -993,7 +993,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsInt(): Int = { nextTokenOrError('"', head) - val x = parseInt(isToken = false) + val x = readInt(isToken = false) nextByteOrError('"', head) x } @@ -1007,7 +1007,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsLong(): Long = { nextTokenOrError('"', head) - val x = parseLong(isToken = false) + val x = readLong(isToken = false) nextByteOrError('"', head) x } @@ -1020,7 +1020,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsDouble(): Double = { nextTokenOrError('"', head) - val x = parseDouble(isToken = false) + val x = readDouble(isToken = false) nextByteOrError('"', head) x } @@ -1033,7 +1033,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsFloat(): Float = { nextTokenOrError('"', head) - val x = parseFloat(isToken = false) + val x = readFloat(isToken = false) nextByteOrError('"', head) x } @@ -1065,7 +1065,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsBigInt(default: BigInt, digitsLimit: Int): BigInt = if (isNextToken('"', head)) { - val x = parseBigInt(isToken = false, default, digitsLimit) + val x = readBigInt(isToken = false, default, digitsLimit) nextByteOrError('"', head) x } else readNullOrTokenError(default, '"') @@ -1102,7 +1102,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsBigDecimal(default: BigDecimal, mc: MathContext, scaleLimit: Int, digitsLimit: Int): BigDecimal = if (isNextToken('"', head)) { - val x = parseBigDecimal(isToken = false, default, mc, scaleLimit, digitsLimit) + val x = readBigDecimal(isToken = false, default, mc, scaleLimit, digitsLimit) nextByteOrError('"', head) x } else readNullOrTokenError(default, '"') @@ -2033,7 +2033,7 @@ final class JsonReader private[jsoniter_scala]( private[this] def booleanError(pos: Int): Nothing = decodeError("illegal boolean", pos) - private[this] def parseByte(isToken: Boolean): Byte = { + def readByte(isToken: Boolean): Byte = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2068,7 +2068,7 @@ final class JsonReader private[jsoniter_scala]( x.toByte } - private[this] def parseShort(isToken: Boolean): Short = { + def readShort(isToken: Boolean): Short = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2103,7 +2103,7 @@ final class JsonReader private[jsoniter_scala]( x.toShort } - private[this] def parseInt(isToken: Boolean): Int = { + def readInt(isToken: Boolean): Int = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2140,7 +2140,7 @@ final class JsonReader private[jsoniter_scala]( x } - private[this] def parseLong(isToken: Boolean): Long = { + def readLong(isToken: Boolean): Long = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2204,7 +2204,7 @@ final class JsonReader private[jsoniter_scala]( }) leadingZeroError(pos - 1) } - private[this] def parseDouble(isToken: Boolean): Double = { + def readDouble(isToken: Boolean): Double = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2352,7 +2352,7 @@ final class JsonReader private[jsoniter_scala]( java.lang.Double.parseDouble(new String(buf, offset, pos - offset)) } - private[this] def parseFloat(isToken: Boolean): Float = { + def readFloat(isToken: Boolean): Float = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2509,7 +2509,7 @@ final class JsonReader private[jsoniter_scala]( xh * yh + (t >>> 32) + (xl * yh + (t & 0xFFFFFFFFL) >>> 32) } - private[this] def parseBigInt(isToken: Boolean, default: BigInt, digitsLimit: Int): BigInt = { + def readBigInt(isToken: Boolean, default: BigInt, digitsLimit: Int): BigInt = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2578,8 +2578,8 @@ final class JsonReader private[jsoniter_scala]( } } - private[this] def parseBigDecimal(isToken: Boolean, default: BigDecimal, mc: MathContext, scaleLimit: Int, - digitsLimit: Int): BigDecimal = { + def readBigDecimal(isToken: Boolean, default: BigDecimal, mc: MathContext, scaleLimit: Int, + digitsLimit: Int): BigDecimal = { var b = if (isToken) nextToken(head) else nextByte(head) diff --git a/jsoniter-scala-core/jvm/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala b/jsoniter-scala-core/jvm/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala index 166f4c804..6ff463704 100644 --- a/jsoniter-scala-core/jvm/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala +++ b/jsoniter-scala-core/jvm/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala @@ -381,7 +381,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsByte(): Byte = { nextTokenOrError('"', head) - val x = parseByte(isToken = false) + val x = readByte(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -410,7 +410,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsShort(): Short = { nextTokenOrError('"', head) - val x = parseShort(isToken = false) + val x = readShort(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -424,7 +424,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsInt(): Int = { nextTokenOrError('"', head) - val x = parseInt(isToken = false) + val x = readInt(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -438,7 +438,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsLong(): Long = { nextTokenOrError('"', head) - val x = parseLong(isToken = false) + val x = readLong(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -452,7 +452,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsFloat(): Float = { nextTokenOrError('"', head) - val x = parseFloat(isToken = false) + val x = readFloat(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -466,7 +466,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsDouble(): Double = { nextTokenOrError('"', head) - val x = parseDouble(isToken = false) + val x = readDouble(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -491,7 +491,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsBigInt(digitsLimit: Int): BigInt = { nextTokenOrError('"', head) - val x = parseBigInt(isToken = false, null, digitsLimit) + val x = readBigInt(isToken = false, null, digitsLimit) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -520,7 +520,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsBigDecimal(mc: MathContext, scaleLimit: Int, digitsLimit: Int): BigDecimal = { nextTokenOrError('"', head) - val x = parseBigDecimal(isToken = false, null, mc, scaleLimit, digitsLimit) + val x = readBigDecimal(isToken = false, null, mc, scaleLimit, digitsLimit) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -546,7 +546,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or dection of leading zero or * illegal format of JSON value or exceeding capacity of `Byte` */ - def readByte(): Byte = parseByte(isToken = true) + def readByte(): Byte = readByte(isToken = true) /** * Reads a JSON string value into a `Char` value. @@ -569,7 +569,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value or exceeding capacity of `Short` */ - def readShort(): Short = parseShort(isToken = true) + def readShort(): Short = readShort(isToken = true) /** * Reads a JSON value into a `Int` value. @@ -578,7 +578,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value or exceeding capacity of `Int` */ - def readInt(): Int = parseInt(isToken = true) + def readInt(): Int = readInt(isToken = true) /** * Reads a JSON number value into a `Long` value. @@ -587,7 +587,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value or exceeding capacity of `Long` */ - def readLong(): Long = parseLong(isToken = true) + def readLong(): Long = readLong(isToken = true) /** * Reads a JSON number value into a `Double` value. @@ -596,7 +596,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value */ - def readDouble(): Double = parseDouble(isToken = true) + def readDouble(): Double = readDouble(isToken = true) /** * Reads a JSON number value into a `Float` value. @@ -605,7 +605,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value */ - def readFloat(): Float = parseFloat(isToken = true) + def readFloat(): Float = readFloat(isToken = true) /** * Reads a JSON number value into a `BigInt` instance with the default limit of allowed digits. @@ -618,7 +618,7 @@ final class JsonReader private[jsoniter_scala]( * illegal format of JSON value or exceeding of the default limit or * when both the JSON value and the provided default value are `null` */ - def readBigInt(default: BigInt): BigInt = parseBigInt(isToken = true, default, bigIntDigitsLimit) + def readBigInt(default: BigInt): BigInt = readBigInt(isToken = true, default, bigIntDigitsLimit) /** * Reads a JSON number value into a `BigInt` instance with the provided limit of allowed digits. @@ -632,7 +632,7 @@ final class JsonReader private[jsoniter_scala]( * illegal format of JSON value or exceeding of the default limit or * when both the JSON value and the provided default value are `null` */ - def readBigInt(default: BigInt, digitsLimit: Int): BigInt = parseBigInt(isToken = true, default, digitsLimit) + def readBigInt(default: BigInt, digitsLimit: Int): BigInt = readBigInt(isToken = true, default, digitsLimit) /** * Reads a JSON number value into a `BigDecimal` instance with the default limit of allowed digits for mantissa, @@ -647,7 +647,7 @@ final class JsonReader private[jsoniter_scala]( * when both the JSON value and the provided default value are `null` */ def readBigDecimal(default: BigDecimal): BigDecimal = - parseBigDecimal(isToken = true, default, bigDecimalMathContext, bigDecimalScaleLimit, bigDecimalDigitsLimit) + readBigDecimal(isToken = true, default, bigDecimalMathContext, bigDecimalScaleLimit, bigDecimalDigitsLimit) /** * Reads a JSON number value into a `BigDecimal` instance with the provided limit of allowed digits for mantissa, @@ -665,7 +665,7 @@ final class JsonReader private[jsoniter_scala]( * when both the JSON value and the provided default value are `null` */ def readBigDecimal(default: BigDecimal, mc: MathContext, scaleLimit: Int, digitsLimit: Int): BigDecimal = - parseBigDecimal(isToken = true, default, mc, scaleLimit, digitsLimit) + readBigDecimal(isToken = true, default, mc, scaleLimit, digitsLimit) /** * Reads a JSON string value into a `String` instance. @@ -965,7 +965,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsByte(): Byte = { nextTokenOrError('"', head) - val x = parseByte(isToken = false) + val x = readByte(isToken = false) nextByteOrError('"', head) x } @@ -979,7 +979,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsShort(): Short = { nextTokenOrError('"', head) - val x = parseShort(isToken = false) + val x = readShort(isToken = false) nextByteOrError('"', head) x } @@ -993,7 +993,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsInt(): Int = { nextTokenOrError('"', head) - val x = parseInt(isToken = false) + val x = readInt(isToken = false) nextByteOrError('"', head) x } @@ -1007,7 +1007,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsLong(): Long = { nextTokenOrError('"', head) - val x = parseLong(isToken = false) + val x = readLong(isToken = false) nextByteOrError('"', head) x } @@ -1020,7 +1020,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsDouble(): Double = { nextTokenOrError('"', head) - val x = parseDouble(isToken = false) + val x = readDouble(isToken = false) nextByteOrError('"', head) x } @@ -1033,7 +1033,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsFloat(): Float = { nextTokenOrError('"', head) - val x = parseFloat(isToken = false) + val x = readFloat(isToken = false) nextByteOrError('"', head) x } @@ -1065,7 +1065,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsBigInt(default: BigInt, digitsLimit: Int): BigInt = if (isNextToken('"', head)) { - val x = parseBigInt(isToken = false, default, digitsLimit) + val x = readBigInt(isToken = false, default, digitsLimit) nextByteOrError('"', head) x } else readNullOrTokenError(default, '"') @@ -1102,7 +1102,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsBigDecimal(default: BigDecimal, mc: MathContext, scaleLimit: Int, digitsLimit: Int): BigDecimal = if (isNextToken('"', head)) { - val x = parseBigDecimal(isToken = false, default, mc, scaleLimit, digitsLimit) + val x = readBigDecimal(isToken = false, default, mc, scaleLimit, digitsLimit) nextByteOrError('"', head) x } else readNullOrTokenError(default, '"') @@ -1992,7 +1992,7 @@ final class JsonReader private[jsoniter_scala]( private[this] def booleanError(pos: Int): Nothing = decodeError("illegal boolean", pos) - private[this] def parseByte(isToken: Boolean): Byte = { + def readByte(isToken: Boolean): Byte = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2028,7 +2028,7 @@ final class JsonReader private[jsoniter_scala]( x.toByte } - private[this] def parseShort(isToken: Boolean): Short = { + def readShort(isToken: Boolean): Short = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2064,7 +2064,7 @@ final class JsonReader private[jsoniter_scala]( x.toShort } - private[this] def parseInt(isToken: Boolean): Int = { + def readInt(isToken: Boolean): Int = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2102,7 +2102,7 @@ final class JsonReader private[jsoniter_scala]( x } - private[this] def parseLong(isToken: Boolean): Long = { + def readLong(isToken: Boolean): Long = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2169,7 +2169,7 @@ final class JsonReader private[jsoniter_scala]( }) leadingZeroError(pos - 1) } - private[this] def parseDouble(isToken: Boolean): Double = { + def readDouble(isToken: Boolean): Double = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2321,7 +2321,7 @@ final class JsonReader private[jsoniter_scala]( java.lang.Double.parseDouble(new String(buf, 0, offset, pos - offset)) } - private[this] def parseFloat(isToken: Boolean): Float = { + def readFloat(isToken: Boolean): Float = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2472,7 +2472,7 @@ final class JsonReader private[jsoniter_scala]( private[this] def unsignedMultiplyHigh(x: Long, y: Long): Long = Math.multiplyHigh(x, y) + x + y // Use implementation that works only when both params are negative - private[this] def parseBigInt(isToken: Boolean, default: BigInt, digitsLimit: Int): BigInt = { + def readBigInt(isToken: Boolean, default: BigInt, digitsLimit: Int): BigInt = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2550,8 +2550,8 @@ final class JsonReader private[jsoniter_scala]( } } - private[this] def parseBigDecimal(isToken: Boolean, default: BigDecimal, mc: MathContext, scaleLimit: Int, - digitsLimit: Int): BigDecimal = { + def readBigDecimal(isToken: Boolean, default: BigDecimal, mc: MathContext, scaleLimit: Int, + digitsLimit: Int): BigDecimal = { var b = if (isToken) nextToken(head) else nextByte(head) diff --git a/jsoniter-scala-core/native/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala b/jsoniter-scala-core/native/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala index cbdf6adba..c739da7a5 100644 --- a/jsoniter-scala-core/native/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala +++ b/jsoniter-scala-core/native/src/main/scala/com/github/plokhotnyuk/jsoniter_scala/core/JsonReader.scala @@ -381,7 +381,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsByte(): Byte = { nextTokenOrError('"', head) - val x = parseByte(isToken = false) + val x = readByte(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -410,7 +410,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsShort(): Short = { nextTokenOrError('"', head) - val x = parseShort(isToken = false) + val x = readShort(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -424,7 +424,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsInt(): Int = { nextTokenOrError('"', head) - val x = parseInt(isToken = false) + val x = readInt(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -438,7 +438,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsLong(): Long = { nextTokenOrError('"', head) - val x = parseLong(isToken = false) + val x = readLong(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -452,7 +452,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsFloat(): Float = { nextTokenOrError('"', head) - val x = parseFloat(isToken = false) + val x = readFloat(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -466,7 +466,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsDouble(): Double = { nextTokenOrError('"', head) - val x = parseDouble(isToken = false) + val x = readDouble(isToken = false) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -491,7 +491,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsBigInt(digitsLimit: Int): BigInt = { nextTokenOrError('"', head) - val x = parseBigInt(isToken = false, null, digitsLimit) + val x = readBigInt(isToken = false, null, digitsLimit) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -520,7 +520,7 @@ final class JsonReader private[jsoniter_scala]( */ def readKeyAsBigDecimal(mc: MathContext, scaleLimit: Int, digitsLimit: Int): BigDecimal = { nextTokenOrError('"', head) - val x = parseBigDecimal(isToken = false, null, mc, scaleLimit, digitsLimit) + val x = readBigDecimal(isToken = false, null, mc, scaleLimit, digitsLimit) nextByteOrError('"', head) nextTokenOrError(':', head) x @@ -546,7 +546,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or dection of leading zero or * illegal format of JSON value or exceeding capacity of `Byte` */ - def readByte(): Byte = parseByte(isToken = true) + def readByte(): Byte = readByte(isToken = true) /** * Reads a JSON string value into a `Char` value. @@ -569,7 +569,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value or exceeding capacity of `Short` */ - def readShort(): Short = parseShort(isToken = true) + def readShort(): Short = readShort(isToken = true) /** * Reads a JSON value into a `Int` value. @@ -578,7 +578,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value or exceeding capacity of `Int` */ - def readInt(): Int = parseInt(isToken = true) + def readInt(): Int = readInt(isToken = true) /** * Reads a JSON number value into a `Long` value. @@ -587,7 +587,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value or exceeding capacity of `Long` */ - def readLong(): Long = parseLong(isToken = true) + def readLong(): Long = readLong(isToken = true) /** * Reads a JSON number value into a `Double` value. @@ -596,7 +596,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value */ - def readDouble(): Double = parseDouble(isToken = true) + def readDouble(): Double = readDouble(isToken = true) /** * Reads a JSON number value into a `Float` value. @@ -605,7 +605,7 @@ final class JsonReader private[jsoniter_scala]( * @throws JsonReaderException in cases of reaching the end of input or detection of leading zero or * illegal format of JSON value */ - def readFloat(): Float = parseFloat(isToken = true) + def readFloat(): Float = readFloat(isToken = true) /** * Reads a JSON number value into a `BigInt` instance with the default limit of allowed digits. @@ -618,7 +618,7 @@ final class JsonReader private[jsoniter_scala]( * illegal format of JSON value or exceeding of the default limit or * when both the JSON value and the provided default value are `null` */ - def readBigInt(default: BigInt): BigInt = parseBigInt(isToken = true, default, bigIntDigitsLimit) + def readBigInt(default: BigInt): BigInt = readBigInt(isToken = true, default, bigIntDigitsLimit) /** * Reads a JSON number value into a `BigInt` instance with the provided limit of allowed digits. @@ -632,7 +632,7 @@ final class JsonReader private[jsoniter_scala]( * illegal format of JSON value or exceeding of the default limit or * when both the JSON value and the provided default value are `null` */ - def readBigInt(default: BigInt, digitsLimit: Int): BigInt = parseBigInt(isToken = true, default, digitsLimit) + def readBigInt(default: BigInt, digitsLimit: Int): BigInt = readBigInt(isToken = true, default, digitsLimit) /** * Reads a JSON number value into a `BigDecimal` instance with the default limit of allowed digits for mantissa, @@ -647,7 +647,7 @@ final class JsonReader private[jsoniter_scala]( * when both the JSON value and the provided default value are `null` */ def readBigDecimal(default: BigDecimal): BigDecimal = - parseBigDecimal(isToken = true, default, bigDecimalMathContext, bigDecimalScaleLimit, bigDecimalDigitsLimit) + readBigDecimal(isToken = true, default, bigDecimalMathContext, bigDecimalScaleLimit, bigDecimalDigitsLimit) /** * Reads a JSON number value into a `BigDecimal` instance with the provided limit of allowed digits for mantissa, @@ -665,7 +665,7 @@ final class JsonReader private[jsoniter_scala]( * when both the JSON value and the provided default value are `null` */ def readBigDecimal(default: BigDecimal, mc: MathContext, scaleLimit: Int, digitsLimit: Int): BigDecimal = - parseBigDecimal(isToken = true, default, mc, scaleLimit, digitsLimit) + readBigDecimal(isToken = true, default, mc, scaleLimit, digitsLimit) /** * Reads a JSON string value into a `String` instance. @@ -965,7 +965,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsByte(): Byte = { nextTokenOrError('"', head) - val x = parseByte(isToken = false) + val x = readByte(isToken = false) nextByteOrError('"', head) x } @@ -979,7 +979,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsShort(): Short = { nextTokenOrError('"', head) - val x = parseShort(isToken = false) + val x = readShort(isToken = false) nextByteOrError('"', head) x } @@ -993,7 +993,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsInt(): Int = { nextTokenOrError('"', head) - val x = parseInt(isToken = false) + val x = readInt(isToken = false) nextByteOrError('"', head) x } @@ -1007,7 +1007,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsLong(): Long = { nextTokenOrError('"', head) - val x = parseLong(isToken = false) + val x = readLong(isToken = false) nextByteOrError('"', head) x } @@ -1020,7 +1020,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsDouble(): Double = { nextTokenOrError('"', head) - val x = parseDouble(isToken = false) + val x = readDouble(isToken = false) nextByteOrError('"', head) x } @@ -1033,7 +1033,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsFloat(): Float = { nextTokenOrError('"', head) - val x = parseFloat(isToken = false) + val x = readFloat(isToken = false) nextByteOrError('"', head) x } @@ -1065,7 +1065,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsBigInt(default: BigInt, digitsLimit: Int): BigInt = if (isNextToken('"', head)) { - val x = parseBigInt(isToken = false, default, digitsLimit) + val x = readBigInt(isToken = false, default, digitsLimit) nextByteOrError('"', head) x } else readNullOrTokenError(default, '"') @@ -1102,7 +1102,7 @@ final class JsonReader private[jsoniter_scala]( */ def readStringAsBigDecimal(default: BigDecimal, mc: MathContext, scaleLimit: Int, digitsLimit: Int): BigDecimal = if (isNextToken('"', head)) { - val x = parseBigDecimal(isToken = false, default, mc, scaleLimit, digitsLimit) + val x = readBigDecimal(isToken = false, default, mc, scaleLimit, digitsLimit) nextByteOrError('"', head) x } else readNullOrTokenError(default, '"') @@ -1992,7 +1992,7 @@ final class JsonReader private[jsoniter_scala]( private[this] def booleanError(pos: Int): Nothing = decodeError("illegal boolean", pos) - private[this] def parseByte(isToken: Boolean): Byte = { + def readByte(isToken: Boolean): Byte = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2028,7 +2028,7 @@ final class JsonReader private[jsoniter_scala]( x.toByte } - private[this] def parseShort(isToken: Boolean): Short = { + def readShort(isToken: Boolean): Short = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2064,7 +2064,7 @@ final class JsonReader private[jsoniter_scala]( x.toShort } - private[this] def parseInt(isToken: Boolean): Int = { + def readInt(isToken: Boolean): Int = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2102,7 +2102,7 @@ final class JsonReader private[jsoniter_scala]( x } - private[this] def parseLong(isToken: Boolean): Long = { + def readLong(isToken: Boolean): Long = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2169,7 +2169,7 @@ final class JsonReader private[jsoniter_scala]( }) leadingZeroError(pos - 1) } - private[this] def parseDouble(isToken: Boolean): Double = { + def readDouble(isToken: Boolean): Double = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2321,7 +2321,7 @@ final class JsonReader private[jsoniter_scala]( java.lang.Double.parseDouble(new String(buf, 0, offset, pos - offset)) } - private[this] def parseFloat(isToken: Boolean): Float = { + def readFloat(isToken: Boolean): Float = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2469,7 +2469,7 @@ final class JsonReader private[jsoniter_scala]( java.lang.Float.parseFloat(new String(buf, 0, offset, pos - offset)) } - private[this] def parseBigInt(isToken: Boolean, default: BigInt, digitsLimit: Int): BigInt = { + def readBigInt(isToken: Boolean, default: BigInt, digitsLimit: Int): BigInt = { var b = if (isToken) nextToken(head) else nextByte(head) @@ -2547,8 +2547,8 @@ final class JsonReader private[jsoniter_scala]( } } - private[this] def parseBigDecimal(isToken: Boolean, default: BigDecimal, mc: MathContext, scaleLimit: Int, - digitsLimit: Int): BigDecimal = { + def readBigDecimal(isToken: Boolean, default: BigDecimal, mc: MathContext, scaleLimit: Int, + digitsLimit: Int): BigDecimal = { var b = if (isToken) nextToken(head) else nextByte(head) diff --git a/version.sbt b/version.sbt index 5405246b1..b640ec775 100644 --- a/version.sbt +++ b/version.sbt @@ -1 +1 @@ -ThisBuild / version := "2.30.16-SNAPSHOT" +ThisBuild / version := "2.31.0-SNAPSHOT"