Trait/Object

io.github.netvl.picopickle.TypesComponent

Writer

Related Docs: object Writer | package TypesComponent

Permalink

trait Writer[T] extends AnyRef

A type class trait for writing objects of the specified type to their backend representation.

All serialization is done by implicit instances of this trait.

Most clients don't need to subclass this trait directly; use Writer companion object to create writers.

Serialization is a success-only process: correctly written serializers will always succeed to write their objects. It is expected that Writer instances can handle all values of their source types, that is, writers are like total functions.

T

source type

Annotations
@implicitNotFound( ... )
Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Writer
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def write0(value: T, acc: Option[BValue]): BValue

    Permalink

    Serializes the given value into its backend representation.

    Serializes the given value into its backend representation.

    This method also accepts an accumulator parameter which is used when serializing complex objects which require multiple serializers to work together (for example, serializing HLists to obtain a map).

    This method shouldn't be invoked directly as it is for internal use. Use write method instead.

    value

    a value to be serialized

    acc

    possibly absent accumulator

    returns

    serialized representation of value

Concrete 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
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef
  14. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  16. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  17. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. final def wait(arg0: Long, arg1: Int): Unit

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def write(value: T): BValue

    Permalink

    Wraps write0 call, passing None as the second argument.

    Wraps write0 call, passing None as the second argument.

    Just a shorthand for write0(value, None). This is the main method which should be used for writing objects.

    value

    a value to be serialized

    returns

    serialized representation of value

Inherited from AnyRef

Inherited from Any

Ungrouped