sjsonnew

package sjsonnew

Type members

Classlikes

object :*:

Provides additional JsonFormats and helpers

Provides additional JsonFormats and helpers

trait At[L <: LList, N <: Nat]
Companion
object
object At
Companion
class
object BUtil

Provides all the predefined JsonFormats.

Provides all the predefined JsonFormats.

Companion
object
Companion
class
class Builder[J](facade: BuilderFacade[J])

Builder is an mutable structure to write JSON into.

Builder is an mutable structure to write JSON into.

trait BuilderFacade[J]

BuilderFacade is a type class that describes how JSON AST elements of type J can be constructed.

BuilderFacade is a type class that describes how JSON AST elements of type J can be constructed.

BuilderFacade[J] also uses FContext[J] instances, so implementors will usually want to define both.

sealed
Companion
object
Companion
class
case
class DeserializationException(msg: String, cause: Throwable, fieldNames: List[String]) extends RuntimeException

ExtractorFacade is a type class that describes how JSON AST elements of type J can be extracted.

ExtractorFacade is a type class that describes how JSON AST elements of type J can be extracted.

trait FContext[J]

FContext is used to construct nested JSON values.

FContext is used to construct nested JSON values.

The most common cases are to build objects and arrays. However, this type is also used to build a single top-level JSON element, in cases where the entire JSON document consists of "333.33".

trait Facade[J] extends BuilderFacade[J] with ExtractorFacade[J]

Facade is a type class that describes how JSON AST elements of type J can be constructed, and how value can be extracted.

Facade is a type class that describes how JSON AST elements of type J can be constructed, and how value can be extracted.

Facade[J] also uses FContext[J] instances, so implementors will usually want to define both.

object HashUtil
@implicitNotFound(msg = "Cannot find HashWriter type class for ${A}")
trait HashWriter[A]

Provides hashing for type A.

Provides hashing for type A.

trait IsoLList[A]

Same as LabelledGeneric in shapeless.

Same as LabelledGeneric in shapeless.

Companion
object
object IsoLList
Companion
class
trait IsoString[A]
Companion
object
object IsoString
Companion
class
Companion
object
Companion
class
trait JsonFormat[A] extends JsonReader[A] with JsonWriter[A]

Provides the JSON deserialization and serialization for type A.

Provides the JSON deserialization and serialization for type A.

trait JsonKeyFormat[A] extends JsonKeyWriter[A] with JsonKeyReader[A]

A typeclasses for encoding and decoding instances of Map[A, ?].

A typeclasses for encoding and decoding instances of Map[A, ?].

Companion
object
Companion
class
@implicitNotFound(msg = "Cannot find JsonKeyReader or JsonKeyFormat type class for ${A}")
trait JsonKeyReader[A]

A typeclass for converting strings to values of type A, used for decoding instances of Map[A, ?].

A typeclass for converting strings to values of type A, used for decoding instances of Map[A, ?].

@implicitNotFound(msg = "Cannot find JsonKeyWriter or JsonKeyFormat type class for ${A}")
trait JsonKeyWriter[A]

A typeclass for converting values of type A to strings, used for encoding instances of Map[A, ?].

A typeclass for converting values of type A to strings, used for encoding instances of Map[A, ?].

@implicitNotFound(msg = "Cannot find JsonReader or JsonFormat type class for ${A}")
trait JsonReader[A]

Provides the JSON deserialization for type A.

Provides the JSON deserialization for type A.

@implicitNotFound(msg = "Cannot find JsonWriter or JsonFormat type class for ${A}")
trait JsonWriter[A]

Provides the JSON serialization for type A.

Provides the JSON serialization for type A.

final
class LCons[A1, A2 <: LList](val name: String, val head: A1, val tail: A2)(implicit evidence$1: JsonFormat[A1], evidence$2: ClassTag[A1], evidence$3: JsonFormat[A2]) extends LList with Product with Serializable with Equals
Companion
object
object LCons
Companion
class
sealed
trait LList

Heterogeneous list (of json serializable stuff) with labels.

Heterogeneous list (of json serializable stuff) with labels.

Companion
object
object LList extends LListFormats
Companion
class
final
class LListOps[L <: LList](l: L)
trait Nat
Companion
object
object Nat
Companion
class
final
class PersistedException(message: String, cause: Throwable, val className: String) extends Throwable

Provides the JsonFormats for the most important Scala types.

Provides the JsonFormats for the most important Scala types.

trait RootJsonFormat[A] extends JsonFormat[A] with RootJsonReader[A] with RootJsonWriter[A]

A special JsonFormat signaling that the format produces a legal JSON root object, i.e. either a JSON array or a JSON object.

A special JsonFormat signaling that the format produces a legal JSON root object, i.e. either a JSON array or a JSON object.

@implicitNotFound(msg = "Cannot find RootJsonReader or RootJsonFormat type class for ${A}")
trait RootJsonReader[A] extends JsonReader[A]

A special JsonReader capable of reading a legal JSON root object, i.e. either a JSON array or a JSON object.

A special JsonReader capable of reading a legal JSON root object, i.e. either a JSON array or a JSON object.

@implicitNotFound(msg = "Cannot find RootJsonWriter or RootJsonFormat type class for ${A}")
trait RootJsonWriter[A] extends JsonWriter[A]

A special JsonWriter capable of writing a legal JSON root object, i.e. either a JSON array or a JSON object.

A special JsonWriter capable of writing a legal JSON root object, i.e. either a JSON array or a JSON object.

class SerializationException(msg: String) extends RuntimeException

SimpleBuilderFacade is a type class that describes how Jawn should construct JSON AST elements of type J.

SimpleBuilderFacade is a type class that describes how Jawn should construct JSON AST elements of type J.

SimpleBuilderFacade[J] also uses FContext[J] instances, so implementors will usually want to define both.

trait SimpleFacade[J] extends Facade[J] with SimpleBuilderFacade[J]

Provides the JsonFormats for the non-collection standard types.

Provides the JsonFormats for the non-collection standard types.

trait SupportHasher[J]
class Unbuilder[J](facade: Facade[J])

Builder is an mutable structure to write JSON into.

Builder is an mutable structure to write JSON into.

sealed
Companion
object
Companion
class

Types

type :*:[A1, A2 <: LList] = LCons[A1, A2]
type LNil = LNil0

Value members

Concrete methods

def deserializationError(msg: String, cause: Throwable, fieldNames: List[String]): Nothing
def jsonReader[A](implicit reader: JsonReader[A]): JsonReader[A]
def jsonWriter[A](implicit writer: JsonWriter[A]): JsonWriter[A]
def serializationError(msg: String): Nothing

Concrete fields

val LNil: LNil0