Simple representation of an applied type.
Simple representation of an applied type. Used for reading pickled types.
Default pickle registry just uses TrieMaps and delgates behavior to a runtime pickler generator.
Default implementation of the Ref registry that allows circular dependencies to be handled.
Default implementation of the Ref registry that allows circular dependencies to be handled. Uses thread-local caches (per pickler/unpickler thread).
The default implementation of a pickling runtime.
The default implementation of a pickling runtime.
Notes:
Default implementation of a runtime pickler generator
Default implementation of a runtime pickler generator
TODO - There is still something off here compared to the hardcoded versions.
[error] scala.pickling.array.json.ArrayJsonTest [error] scala.pickling.externalizable.mapstatus.MapStatusTest [error] scala.pickling.runtimenulltest.NullRuntimeTest [error] scala.pickling.runtime.RuntimeArrayTests [error] scala.pickling.test.collection.WrappedArrayTest [error] scala.pickling.array.binary.ArrayBinaryTest [error] scala.pickling.test.runtime.array.RuntimeArrayTest
This runtime will not use reflection to generate new picklers, but DOES allow lookup of statically generated picklers at runtime.
An implementation which ensures that no newly generated picklers create shared references.
An implementation of the pickling runtime that tries to avoid ALL runtime picklers, including runtime lookup of statically defined picklers.
An implementation of the RefRegistry which ensures NO sharing during pickling.
An implementation of ref sharing that ensures no references are created while pickling and none are looked up while unpickling.
Helper method to help register picklers which can handle special/crazy classes for runtime generration.
Helper method to help register picklers which can handle special/crazy classes for runtime generration.
Note: Currently this only handles Tuple2s
A runtime pickler generator that just throws exceptions when trying to create picklers.
Helper method to aid in retrieving java.lang.reflect.Fields and java.lang.reflect.Methods at runtime.
(Since version 0.11) Use currentRuntime.refRegistry.pickle.clear
instead
(Since version 0.11) Use currentRuntime.refRegistry.unpickle.clear
instead
(Since version 0.11) Use currentRuntime.refRegistry.pickle.registerPicklee
instead
(Since version 0.11) Use currentRuntime.refRegistry.unpickle.lookupUnpicklees
instead
(Since version 0.11) Use currentRuntime.refRegistry.unpickle.preregisterUnpicklee
instead
(Since version 0.11) Use currentRuntime.refRegistry.pickle.registerPicklee
instead
(Since version 0.11) Use currentRuntime.refRegistry.unpickle.registerUnpicklee
instead