Class

scala.pickling.internal

DefaultPicklerRegistry

Related Doc: package internal

Permalink

final class DefaultPicklerRegistry extends PicklerRegistry with CustomRuntime

Default pickle registry just uses TrieMaps and delegates behavior to a runtime pickler generator.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. DefaultPicklerRegistry
  2. CustomRuntime
  3. PicklerRegistry
  4. AnyRef
  5. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DefaultPicklerRegistry(generator: RuntimePicklerGenerator)

    Permalink

Type Members

  1. type PicklerGenerator = (FastTypeTag[_]) ⇒ Pickler[_]

    Permalink
  2. type Templates = (PicklerGen[Any], UnpicklerGen[Any])

    Permalink
    Definition Classes
    PicklerRegistry
  3. class Tuple2RuntimeKnownTagUnpickler[L, R] extends AbstractUnpickler[(L, R)]

    Permalink

    Actual runtime Unpickler of tuples whose types are known.

    Actual runtime Unpickler of tuples whose types are known.

    Don't extend AbstractUnpickler because it is registered in RuntimePicklerRegistry with custom names.

    Definition Classes
    CustomRuntime
  4. type UnpicklerGenerator = (FastTypeTag[_]) ⇒ Unpickler[_]

    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. object Tuple2RuntimePicklerUnpickler extends AbstractPicklerUnpickler[(Any, Any)]

    Permalink

    Runtime Pickler and Unpickler of tuple with unknown types.

    Runtime Pickler and Unpickler of tuple with unknown types.

    Definition Classes
    CustomRuntime
  5. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. def genPickler(classLoader: ClassLoader, clazz: Class[_], tag: FastTypeTag[_])(implicit share: Share): Pickler[_]

    Permalink

    Looks up a Pickler for the given tag.

    Looks up a Pickler for the given tag. If none is found, then we attempt to generate one.

    classLoader

    The classloader to use when reflecting over the pickled class.

    clazz

    The clazz we need to pickle.

    tag

    The full tag of the type we're pickling, which may or may not include type parameters.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  11. def genUnpickler(mirror: Mirror, tagKey: String)(implicit share: Share): Unpickler[_]

    Permalink

    Looks up the registered unpickler using the provided tagKey.

    Looks up the registered unpickler using the provided tagKey.

    If there are no registered picklers or pickler-generators, then we instead attempt to generate the pickler using the passed in information.

    TODO(jsuereth) - This should use classLoader just like genPickler. No reason to mix Java/Scala reflection.

    mirror

    The scala mirror (classloader/symbolloader) we use to generate the unpickler.

    tagKey

    The full tag of the type, which may or may not include type parameters.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  12. final def getClass(): Class[_]

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

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

    Permalink
    Definition Classes
    Any
  15. val isLookupEnabled: Boolean

    Permalink

    Checks if lookup is enabled for this registry

    Checks if lookup is enabled for this registry

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  16. def lookupExistingPickler(key: String): Option[Pickler[_]]

    Permalink

    Checks the existence of a pickler ignoring the registered generators.

    Checks the existence of a pickler ignoring the registered generators.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  17. def lookupExistingUnpickler(key: String): Option[Unpickler[_]]

    Permalink

    Checks the existence of an unpickler ignoring the registered generators.

    Checks the existence of an unpickler ignoring the registered generators.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  18. def lookupPickler(key: String): Option[Pickler[_]]

    Permalink

    Looks for a pickler with the given FastTypeTag string.

    Looks for a pickler with the given FastTypeTag string.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  19. def lookupUnpickler(key: String): Option[Unpickler[_]]

    Permalink

    Checks the existence of an unpickler.

    Checks the existence of an unpickler.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  20. def mkRuntimeTravPickler[C](elemClass: Class[_], elemTag: FastTypeTag[_], collTag: FastTypeTag[_], elemPickler0: Pickler[_], elemUnpickler0: Unpickler[_])(implicit ev: (C) ⇒ Traversable[_]): AbstractPicklerUnpickler[C] { ... /* 3 definitions in type refinement */ }

    Permalink

    Runtime Pickler and Unpickler for any Traversable.

    Runtime Pickler and Unpickler for any Traversable.

    C

    Collection type

    elemClass

    Elem runtime class

    elemTag

    Elem tag type

    collTag

    Collection tag type

    Definition Classes
    CustomRuntime
  21. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  24. def registerPickler[T](key: String, p: Pickler[T]): Unit

    Permalink

    Registers a pickler with this registry for future use.

    Registers a pickler with this registry for future use.

    key

    The type key for the pickler. Note: In reflective scenarios this may not include type parameters. In those situations, the pickler should be able to handle arbitrary (existential) type parameters.

    p

    The pickler to register.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  25. def registerPickler[T](p: Pickler[T]): Unit

    Permalink
    Definition Classes
    PicklerRegistry
  26. def registerPicklerGenerator[T](typeConstructorKey: String, generator: PicklerGen[T]): Unit

    Permalink

    Registers a function which can generate picklers for a given type constructor.

    Registers a function which can generate picklers for a given type constructor.

    typeConstructorKey

    The type constructor. e.g. "scala.List" for something that can make scala.List[A] picklers.

    generator

    A function which takes an applied type string (your type + arguments) and returns a pickler for this type.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  27. def registerPicklerUnpickler[T](key: String, p: Pickler[T] with Unpickler[T]): Unit

    Permalink

    Registers a pickler and unpickler for a type with this registry for future use.

    Registers a pickler and unpickler for a type with this registry for future use.

    key

    The type key for the pickler. Note: In reflective scenarios this may not include type parameters. In those situations, the pickler should be able to handle arbitrary (existential) type parameters.

    p

    The unpickler to register.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  28. def registerPicklerUnpickler[T](p: Pickler[T] with Unpickler[T]): Unit

    Permalink
    Definition Classes
    PicklerRegistry
  29. def registerPicklerUnpicklerGenerator[T](typeConstructorKey: String, generator: PicklerUnpicklerGen[T]): Unit

    Permalink

    Registers a function which can generate picklers for a given type constructor.

    Registers a function which can generate picklers for a given type constructor.

    typeConstructorKey

    The type constructor. e.g. "scala.List" for something that can make scala.List[A] picklers.

    generator

    A function which takes an applied type string (your type + arguments) and returns a pickler for this type.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  30. final def registerTemplatesAtInit(ts: Vector[(String, Templates)]): Unit

    Permalink

    Register templates (also known as generators) that know how to pickle and unpickle types at runtime without using reflection.

    Register templates (also known as generators) that know how to pickle and unpickle types at runtime without using reflection.

    Definition Classes
    PicklerRegistry
  31. def registerUnpickler[T](key: String, p: Unpickler[T]): Unit

    Permalink

    Registers an unpickler with this registry for future use.

    Registers an unpickler with this registry for future use.

    key

    The type key for the unpickler. Note: In reflective scenarios this may not include type parameters. In those situations, the unpickler should be able to handle arbitrary (existential) type parameters.

    p

    The unpickler to register.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  32. def registerUnpickler[T](p: Unpickler[T]): Unit

    Permalink
    Definition Classes
    PicklerRegistry
  33. def registerUnpicklerGenerator[T](typeConstructorKey: String, generator: UnpicklerGen[T]): Unit

    Permalink

    Registers a function which can generate picklers for a given type constructor.

    Registers a function which can generate picklers for a given type constructor.

    typeConstructorKey

    The type constructor. e.g. "scala.List" for something that can make scala.List[A] picklers.

    generator

    A function which takes an applied type string (your type + arguments) and returns a pickler for this type.

    Definition Classes
    DefaultPicklerRegistryPicklerRegistry
  34. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  35. val templatesToRegister: collection.immutable.Vector[(String, (PicklerGen[Any], UnpicklerGen[Any]))]

    Permalink
  36. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  37. val tupleGenerators: (PicklerGen[Any], UnpicklerGen[Any])

    Permalink
  38. val tuplePicklerGenerator: PicklerGen[(Any, Any)]

    Permalink
    Definition Classes
    CustomRuntime
  39. val tupleUnpicklerGenerator: UnpicklerGen[(Any, Any)]

    Permalink
    Definition Classes
    CustomRuntime
  40. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  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( ... )

Inherited from CustomRuntime

Inherited from PicklerRegistry

Inherited from AnyRef

Inherited from Any

Ungrouped