Packages

t

refuel.json

JsonTransform

trait JsonTransform extends AnyRef

Context that performs Json serialize / deserialize by refuel json.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JsonTransform
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. implicit class JDescribe extends AnyRef

    Deserialize JsonRawData.

    Deserialize JsonRawData. If you want to build a Json syntax tree, call jsonTree Otherwise, return deserialize result with failure in as(CodecClassCodec.from[XXX]).

    There are currently three main ways to generate Codec.

    1. CaseClassCodec

    CaseClassCodec.from[XXX]

    Applying class and unapply function are required to use CaseClassCodec. Also, the JsonRawData key and the case class field name must exactly match. Order has no effect.

    2. ConstCodec

    ConstCodec.from("key1", "key2")(XXX.apply)(XXX.unapply)

    The variable length character string that becomes the first argument corresponds to the key of Json raw data. Cannot refer to class field name due to dynamic apply function.

    NOTE: In addition, due to the nature of macro, it is not possible to transfer the argument of the upper function as the argument of the macro function.

    3. Custom codec builder

    "root".parsed(
      {
        "1/4".parsed(CodecA) ++
          "2/4".parsed(CodecA) ++
          "3/4".parsed(option(CodecAA)) ++
          "4/4".parsed(option(CodecAA))
        }.apply(B.apply)(B.unapply)
    ).apply(C.apply)(C.unapply)

    You can use DSL to combine Codec and generate new Codecs.

    Attributes
    protected
  2. implicit class JScribe[T] extends AnyRef

    Serialize any object to Json syntax tree.

    Serialize any object to Json syntax tree. In this state, it is not JsonRawData, but it becomes JsonRawData by Json.pour. A function that takes an implicit codec, but in many cases it will require explicit assignment.

    ???.toJson(CaseClassCodec.from[XXX])
    T

    Any object type

    Attributes
    protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  9. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  16. def toString(): String
    Definition Classes
    AnyRef → Any
  17. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  18. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  19. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped