Class

wvlet.airframe.codec

LazyCodec

Related Doc: package codec

Permalink

case class LazyCodec[A](surface: Surface, codecFactory: MessageCodecFactory) extends MessageCodec[A] with Product with Serializable

For generating codec for recursive types.

For example, if type X has a recursion like X(name:String, child:Option[X]), LazyCodec will be used to generate a codec instance as MessageCodec[X](StringCodec, OptionCodec(LazyCodec[X])).

Linear Supertypes
Product, Equals, MessageCodec[A], LogSupport, LazyLogger, LoggingMethods, Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LazyCodec
  2. Product
  3. Equals
  4. MessageCodec
  5. LogSupport
  6. LazyLogger
  7. LoggingMethods
  8. Serializable
  9. Serializable
  10. AnyRef
  11. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new LazyCodec(surface: Surface, codecFactory: MessageCodecFactory)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @throws( ... )
  6. val codecFactory: MessageCodecFactory

    Permalink
  7. macro def debug(message: Any, cause: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods
  8. macro def debug(message: Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods
  9. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  10. macro def error(message: Any, cause: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods
  11. macro def error(message: Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods
  12. def fromJson(json: String): A

    Permalink
    Definition Classes
    MessageCodec
  13. def fromMap(m: Map[String, Any]): A

    Permalink
    Definition Classes
    MessageCodec
  14. def fromMsgPack(msgpack: Array[Byte]): A

    Permalink
    Definition Classes
    MessageCodec
  15. def fromString(s: String): A

    Permalink

    A shortcut for fromMsgPack(StringCodec.toMsgPack(s))

    A shortcut for fromMsgPack(StringCodec.toMsgPack(s))

    Definition Classes
    MessageCodec
  16. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  17. macro def info(message: Any, cause: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods
  18. macro def info(message: Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods
  19. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  20. macro def logAt(logLevel: LogLevel, message: Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods
  21. lazy val logger: Logger

    Permalink
    Attributes
    protected[this]
    Definition Classes
    LazyLogger
  22. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  23. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  24. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  25. def pack(p: Packer, v: A): Unit

    Permalink
    Definition Classes
    LazyCodecMessageCodec
  26. def pack(v: A): MsgPack

    Permalink

    Converting the object into MessagePack (= Array[Byte])

    Converting the object into MessagePack (= Array[Byte])

    Definition Classes
    MessageCodec
  27. val surface: Surface

    Permalink
  28. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  29. def toJSONObject(v: A): JSONObject

    Permalink
    Definition Classes
    MessageCodec
  30. def toJson(v: A): String

    Permalink
    Definition Classes
    MessageCodec
  31. def toMsgPack(v: A): Array[Byte]

    Permalink
    Definition Classes
    MessageCodec
  32. macro def trace(message: Any, cause: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods
  33. macro def trace(message: Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods
  34. def unpack(u: Unpacker, v: MessageContext): Unit

    Permalink
    Definition Classes
    LazyCodecMessageCodec
  35. def unpack(msgpack: MsgPack): A

    Permalink

    Converting the input MessagePack into an object.

    Converting the input MessagePack into an object. If the conversion fails, throw an IllegalArgumentException

    Definition Classes
    MessageCodec
  36. def unpackBytes(msgpack: Array[Byte], offset: Int, len: Int): Option[A]

    Permalink
    Definition Classes
    MessageCodec
  37. def unpackBytes(msgpack: Array[Byte]): Option[A]

    Permalink
    Definition Classes
    MessageCodec
  38. def unpackJson(json: String): Option[A]

    Permalink
    Definition Classes
    MessageCodec
  39. def unpackMsgPack(msgpack: Array[Byte], offset: Int, len: Int): Option[A]

    Permalink
    Definition Classes
    MessageCodec
  40. def unpackMsgPack(msgpack: Array[Byte]): Option[A]

    Permalink
    Definition Classes
    MessageCodec
  41. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  42. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  43. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  44. macro def warn(message: Any, cause: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods
  45. macro def warn(message: Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    LoggingMethods

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from Product

Inherited from Equals

Inherited from MessageCodec[A]

Inherited from LogSupport

Inherited from LazyLogger

Inherited from LoggingMethods

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped