abstract class Pickler[T] extends AnyRef

An abstract class for writing and reading Scala objects to and from a legible representation. The representation follows the following grammar:

Pickled = `true` | `false` | `null` | NumericLit | StringLit |
          Labelled | Pickled `,` Pickled
Labelled = StringLit `(` Pickled? `)`

All ...Lit classes are as in JSON. @see scala.tools.nsc.io.Lexer

Subclasses of Pickler each can write and read individual classes of values.

T

the type of values handled by this pickler. These Picklers build on the work of Andrew Kennedy. They are most closely inspired by Iulian Dragos' picklers for Scala to XML. See: http://code.google.com/p/gdata-scala-client/wiki/DevelopersGuide

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Pickler
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Pickler()

Abstract Value Members

  1. abstract def pickle(wr: Writer, x: T): Unit

    Writes value in pickled form

    Writes value in pickled form

    wr

    the writer to which pickled form is written

    x

    the value to write

  2. abstract def unpickle(rd: Lexer): Unpickled[T]

    Reads value from pickled form.

    Reads value from pickled form.

    rd

    the lexer from which lexemes are read

    returns

    An UnpickleSuccess value if the current input corresponds to the kind of value that is unpickled by the current subclass of Pickler, an UnpickleFailure value otherwise.

    Exceptions thrown

    `Lexer.MalformedInput` if input is invalid, or if an Unpickle

Concrete 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. def asClass[U <: T](c: Class[U]): CondPickler[T]

    A conditional pickler handling values of some Scala class.

    A conditional pickler handling values of some Scala class. It adds the class name as a label to the representation of the current pickler and

    c

    the class of values handled by this pickler.

  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  7. def cond(p: (Any) ⇒ Boolean): CondPickler[T]

    A conditional pickler obtained from the current pickler.

    A conditional pickler obtained from the current pickler.

    p

    the condition to test to find out whether pickler can handle some Scala value.

  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. def labelled(label: String): Pickler[T]

    A pickler that adds a label to the current pickler, using the representation label ( <current pickler> )

  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  19. def toString(): String
    Definition Classes
    AnyRef → Any
  20. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  23. def wrapped[U](in: (T) ⇒ U)(out: (U) ⇒ T): Pickler[U]

    A pickler obtained from the current pickler by a pair of transformer functions

    A pickler obtained from the current pickler by a pair of transformer functions

    in

    the function that maps values handled by the current pickler to values handled by the wrapped pickler.

    out

    the function that maps values handled by the wrapped pickler to values handled by the current pickler.

  24. def ~[U](that: ⇒ Pickler[U]): Pickler[~[T, U]]

    A pickler representing a ~-pair of values as two consecutive pickled strings, separated by a comma.

    A pickler representing a ~-pair of values as two consecutive pickled strings, separated by a comma.

    that

    the second pickler which together with the current pickler makes up the pair this ~ that to be pickled.

Inherited from AnyRef

Inherited from Any

Ungrouped