Package

com.rallyhealth.weejson.v1

play

Permalink

package play

Visibility
  1. Public
  2. All

Type Members

  1. class PlayJson extends AstTransformer[JsValue]

    Permalink
  2. class UnorderedPlayJson extends PlayJson

    Permalink

    Uses ~0.6x of the heap of PlayJson in exchange for undefined order of JsObject keys.

    Uses ~0.6x of the heap of PlayJson in exchange for undefined order of JsObject keys. Ideal for

    jsValue.as[T]

    where order is irrelevant.

    Heap usage for https://rally-connect-non-prod.s3.amazonaws.com/chop-shop/test-data/labcorp.json.xz:

    • 814 MB: Array[Byte]
    • 5,629 MB: play.Json.parse()
    • 5,243 MB: FromJson().transform(PlayJson) (java.util.LinkedHashMap initialCapacity=2)
    • 3,355 MB: FromJson().transform(UnorderedPlayJson) (Map1-4 + TreeMap)

    jsValue.as[T] }}}

    Heap usage for https://rally-connect-non-prod.s3.amazonaws.com/chop-shop/test-data/labcorp.json.xz:

    • 814 MB: Array[Byte]
    • 5,629 MB: play.Json.parse()
    • 5,243 MB: FromJson().transform(PlayJson) (java.util.LinkedHashMap initialCapacity=2)
    • 3,355 MB: FromJson().transform(UnorderedPlayJson) (Map1-4 + TreeMap)

Value Members

  1. object PlayJson extends PlayJson

    Permalink
  2. object PlayJsonImplicits

    Permalink

    Convenience shims back to inefficient play-json formats.

    Convenience shims back to inefficient play-json formats.

    weePickle FromTo macros are more performant than using play-json Formats. play-json always requires going through an intermediate heavyweight AST: - JsValue boxes every type. Extra allocations. - JsObject is full of hash maps which are less efficient than struct-like classes (both cpu and memory).

  3. object UnorderedPlayJson extends UnorderedPlayJson

    Permalink

Ungrouped