Skip to content

Commit

Permalink
Move some formats to package object
Browse files Browse the repository at this point in the history
  • Loading branch information
eed3si9n committed Aug 11, 2023
1 parent 496a11c commit cfdce7a
Show file tree
Hide file tree
Showing 13 changed files with 28 additions and 16 deletions.
8 changes: 4 additions & 4 deletions build.sbt
Expand Up @@ -2,11 +2,11 @@ import Dependencies._
import com.typesafe.tools.mima.core._
import sbt.internal.ProjectMatrix

val scala212 = "2.12.15"
val scala213 = "2.13.8"
val scala3 = "3.1.0"
val scala212 = "2.12.18"
val scala213 = "2.13.11"
val scala3 = "3.3.0"

ThisBuild / version := "0.12.0-SNAPSHOT"
ThisBuild / version := "0.13.0"
ThisBuild / scalaVersion := scala212
lazy val allScalaVersions = Seq(scala212, scala213, scala3)

Expand Down
14 changes: 13 additions & 1 deletion core/src/main/scala/sjsonnew/package.scala
Expand Up @@ -16,7 +16,19 @@

import scala.reflect.ClassTag

package object sjsonnew {
package object sjsonnew
extends PrimitiveFormats
with StandardFormats
with TupleFormats
with CollectionFormats
with AdditionalFormats
with UnionFormats
with FlatUnionFormats
with IsoFormats
with JavaPrimitiveFormats
with ThrowableFormats
with ImplicitHashWriters
{
def deserializationError(msg: String, cause: Throwable = null, fieldNames: List[String] = Nil) = throw new DeserializationException(msg, cause, fieldNames)
def serializationError(msg: String) = throw new SerializationException(msg)

Expand Down
2 changes: 1 addition & 1 deletion project/build.properties
@@ -1 +1 @@
sbt.version=1.7.2
sbt.version=1.9.2
Expand Up @@ -21,7 +21,7 @@ import org.scalatest.flatspec.AnyFlatSpec
import BUtil._
import LList._

class MurmurhashSpec extends AnyFlatSpec with BasicJsonProtocol {
class MurmurhashSpec extends AnyFlatSpec {
"The IntJsonFormat" should "convert an Int to an int hash" in {
assert(Hasher.hashUnsafe[Int](1) === 1527037976)
}
Expand Down
Expand Up @@ -21,7 +21,7 @@ package support.spray
import java.util.Arrays
import spray.json.{ JsArray, JsNumber, JsObject, JsString, JsValue }

object CollectionFormatsSpec extends verify.BasicTestSuite with BasicJsonProtocol {
object CollectionFormatsSpec extends verify.BasicTestSuite {
case class Person(name: String, value: List[Int], ary: Array[Int],
m: Map[String, Int], vs: Vector[Int])
implicit object PersonFormat extends JsonFormat[Person] {
Expand Down
Expand Up @@ -19,7 +19,7 @@ package support.spray

import spray.json.{ JsArray, JsNumber, JsString, JsObject }

object IsoLListFormatSpec extends verify.BasicTestSuite with BasicJsonProtocol {
object IsoLListFormatSpec extends verify.BasicTestSuite {
sealed trait Contact
case class Person(name: String, value: Option[Int]) extends Contact
case class Organization(name: String, value: Option[Int]) extends Contact
Expand Down
Expand Up @@ -22,7 +22,7 @@ import java.lang.{ Integer => JInteger, Long => JLong, Boolean => JBoolean,
Float => JFloat, Double => JDouble, Byte => JByte, Short => JShort,
Character => JCharacter }

object JavaPrimitiveFormatsSpec extends verify.BasicTestSuite with BasicJsonProtocol {
object JavaPrimitiveFormatsSpec extends verify.BasicTestSuite {
test("The JIntegerJsonFormat") {
// "convert an JInteger to a JsNumber" in {
Predef.assert(Converter.toJsonUnsafe[JInteger](42: JInteger) == JsNumber(42))
Expand Down
Expand Up @@ -20,7 +20,7 @@ package support.spray
import java.util.Arrays
import spray.json.{ JsArray, JsNumber, JsString, JsObject }

object LListFormatsSpec extends verify.BasicTestSuite with BasicJsonProtocol {
object LListFormatsSpec extends verify.BasicTestSuite {
val empty = LNil
val emptyObject = JsObject()
val list = ("Z", 2) :*: ("a", 1) :*: LNil
Expand Down
Expand Up @@ -20,7 +20,7 @@ package support.spray

import spray.json.{ JsValue, JsNumber, JsString, JsNull, JsTrue, JsFalse }

object PritimiveFormatsSpec extends verify.BasicTestSuite with BasicJsonProtocol {
object PritimiveFormatsSpec extends verify.BasicTestSuite {

test("The IntJsonFormat") {
// "convert an Int to a JsNumber"
Expand Down
Expand Up @@ -21,7 +21,7 @@ package support.spray
import spray.json.{ JsValue, JsNumber, JsString, JsNull, JsTrue, JsFalse, JsObject }
import scala.Right

object StandardFormatsSpec extends verify.BasicTestSuite with BasicJsonProtocol {
object StandardFormatsSpec extends verify.BasicTestSuite {
case class Person(name: Option[String], value: Option[Int])
implicit object PersonFormat extends JsonFormat[Person] {
def write[J](x: Person, builder: Builder[J]): Unit = {
Expand Down
Expand Up @@ -17,7 +17,7 @@
package sjsonnew
package support.spray

object ThrowableFormatsSpec extends verify.BasicTestSuite with BasicJsonProtocol {
object ThrowableFormatsSpec extends verify.BasicTestSuite {
test("The throwableFormat round trip") {
val t: Throwable = new Exception("foo", new Exception("bar"))

Expand Down
Expand Up @@ -21,7 +21,7 @@ package support.spray
import spray.json.{ JsValue, JsNumber, JsString, JsNull, JsTrue, JsFalse, JsArray }
import scala.Right

object TupleFormatsSpec extends verify.BasicTestSuite with BasicJsonProtocol {
object TupleFormatsSpec extends verify.BasicTestSuite {

test("The tuple1Format") {
// "convert (42) to a JsNumber"
Expand Down
Expand Up @@ -21,7 +21,7 @@ import java.util.Arrays
import spray.json.{ JsArray, JsNumber, JsString, JsObject }
import LList._

object UnionFormatsSpec extends verify.BasicTestSuite with BasicJsonProtocol {
object UnionFormatsSpec extends verify.BasicTestSuite {
sealed trait Fruit
case class Apple() extends Fruit
sealed trait Citrus extends Fruit
Expand Down

0 comments on commit cfdce7a

Please sign in to comment.