package chill
Scala extensions to the Kryo serialization library.
- Alphabetic
- By Inheritance
- chill
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
class
AllScalaRegistrar extends IKryoRegistrar
Registers all the scala (and java) serializers we have.
Registers all the scala (and java) serializers we have. The registrations are designed to cover most of scala.collecion.immutable, so they can be used in long term persistence scenarios that run with setRegistrationRequired(true).
When adding new serializers, add them to the end of the list, so compatibility is not broken needlessly for projects using chill for long term persistence - see com.twitter.chill.RegistrationIdsSpec.
-
class
AllScalaRegistrar_0_10_0 extends IKryoRegistrar
Registrar for everything that was registered in chill 0.10.0
-
class
AllScalaRegistrar_0_9_2 extends IKryoRegistrar
Registrar for everything that was registered in chill 0.9.2 - included for backwards compatibility.
- class BitSetSerializer extends KSerializer[BitSet]
- class ClassManifestSerializer[T] extends KSerializer[ClassManifest[T]]
- class ClassTagSerializer[T] extends KSerializer[ClassTag[T]]
- class CleaningSerializer[T <: AnyRef] extends KSerializer[T]
-
class
EmptyScalaKryoInstantiator extends KryoInstantiator
This class has a no-arg constructor, suitable for use with reflection instantiation It has no registered serializers, just the standard Kryo configured for Kryo.
- class EnumerationSerializer extends KSerializer[Value]
-
class
Externalizer[T] extends Externalizable with KryoSerializable
This is a more fault-tolerant MeatLocker that tries first to do Java serialization, and then falls back to Kryo serialization if that does not work.
- class FieldAccessFinder extends ClassVisitor
-
class
InnerClosureFinder extends ClassVisitor
Find inner closures and avoid class initialization
Find inner closures and avoid class initialization
val closure1 = (i: Int) => { Option(i).map { x => x + someSerializableValue // inner closure } }
- type Input = esotericsoftware.kryo.io.Input
- class JavaWrapperCollectionRegistrar extends IKryoRegistrar
- type KSerializer[T] = Serializer[T]
- type Kryo = esotericsoftware.kryo.Kryo
- class KryoBase extends Kryo
- class LeftSerializer[A, B] extends KSerializer[Left[A, B]]
- class ManifestSerializer[T] extends KSerializer[Manifest[T]]
-
class
MeatLocker[T] extends Serializable
Use Kryo to provide a "box" which is efficiently Java serializable even if the underlying t is not, as long as it is serializable with Kryo.
Use Kryo to provide a "box" which is efficiently Java serializable even if the underlying t is not, as long as it is serializable with Kryo.
Externalizer has replaced this class. Prefer that.
- case class MethodIdentifier[T](cls: Class[T], name: String, desc: String) extends Product with Serializable
-
class
ObjectSerializer[T] extends KSerializer[T]
Uses facts about how scala compiles object singletons to Java + reflection
- type Output = esotericsoftware.kryo.io.Output
- class RegexSerializer extends KSerializer[Regex]
-
class
RichKryo extends RichKryoCompat
Enrichment pattern to add methods to Kryo objects TODO: make this a value-class in scala 2.10 This also follows the builder pattern to allow easily chaining this calls
- trait RichKryoCompat extends AnyRef
- class RightSerializer[A, B] extends KSerializer[Right[A, B]]
-
class
ScalaCollectionsRegistrar extends IKryoRegistrar
Note that additional scala collections registrations are provided by AllScalaRegistrar.
Note that additional scala collections registrations are provided by AllScalaRegistrar. They have not been included in this registrar for backwards compatibility reasons.
-
class
ScalaCollectionsRegistrarCompat extends IKryoRegistrar
Scala collections registrar for compatibility between 2.12- and 2.13+.
Scala collections registrar for compatibility between 2.12- and 2.13+.
For 2.12- there's no extra classes that need to be registered.
- See also
ScalaCollectionsRegistrar and AllScalaRegistrar for all the provided registrations.
-
class
ScalaKryoInstantiator extends EmptyScalaKryoInstantiator
Makes an empty instantiator then registers everything
- class SingletonSerializer[T] extends KSerializer[T]
- class SomeSerializer[T] extends KSerializer[Some[T]]
- class SortedMapSerializer[A, B] extends KSerializer[SortedMap[A, B]]
- class SortedSetSerializer[T] extends KSerializer[SortedSet[T]]
- class StreamSerializer[T] extends KSerializer[Stream[T]]
- class TraversableSerializer[T, C <: Traversable[T]] extends KSerializer[C]
- class Tuple10Serializer[A, B, C, D, E, F, G, H, I, J] extends KSerializer[(A, B, C, D, E, F, G, H, I, J)] with Serializable
- class Tuple11Serializer[A, B, C, D, E, F, G, H, I, J, K] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K)] with Serializable
- class Tuple12Serializer[A, B, C, D, E, F, G, H, I, J, K, L] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L)] with Serializable
- class Tuple13Serializer[A, B, C, D, E, F, G, H, I, J, K, L, M] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L, M)] with Serializable
- class Tuple14Serializer[A, B, C, D, E, F, G, H, I, J, K, L, M, N] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L, M, N)] with Serializable
- class Tuple15Serializer[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)] with Serializable
- class Tuple16Serializer[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)] with Serializable
- class Tuple17Serializer[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)] with Serializable
- class Tuple18Serializer[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R)] with Serializable
- class Tuple19Serializer[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S)] with Serializable
- class Tuple1DoubleSerializer extends KSerializer[(Double)] with Serializable
- class Tuple1IntSerializer extends KSerializer[(Int)] with Serializable
- class Tuple1LongSerializer extends KSerializer[(Long)] with Serializable
- class Tuple1Serializer[A] extends KSerializer[(A)] with Serializable
- class Tuple20Serializer[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T)] with Serializable
- class Tuple21Serializer[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U)] with Serializable
- class Tuple22Serializer[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V] extends KSerializer[(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V)] with Serializable
- class Tuple2DoubleDoubleSerializer extends KSerializer[(Double, Double)] with Serializable
- class Tuple2DoubleIntSerializer extends KSerializer[(Double, Int)] with Serializable
- class Tuple2DoubleLongSerializer extends KSerializer[(Double, Long)] with Serializable
- class Tuple2IntDoubleSerializer extends KSerializer[(Int, Double)] with Serializable
- class Tuple2IntIntSerializer extends KSerializer[(Int, Int)] with Serializable
- class Tuple2IntLongSerializer extends KSerializer[(Int, Long)] with Serializable
- class Tuple2LongDoubleSerializer extends KSerializer[(Long, Double)] with Serializable
- class Tuple2LongIntSerializer extends KSerializer[(Long, Int)] with Serializable
- class Tuple2LongLongSerializer extends KSerializer[(Long, Long)] with Serializable
- class Tuple2Serializer[A, B] extends KSerializer[(A, B)] with Serializable
- class Tuple3Serializer[A, B, C] extends KSerializer[(A, B, C)] with Serializable
- class Tuple4Serializer[A, B, C, D] extends KSerializer[(A, B, C, D)] with Serializable
- class Tuple5Serializer[A, B, C, D, E] extends KSerializer[(A, B, C, D, E)] with Serializable
- class Tuple6Serializer[A, B, C, D, E, F] extends KSerializer[(A, B, C, D, E, F)] with Serializable
- class Tuple7Serializer[A, B, C, D, E, F, G] extends KSerializer[(A, B, C, D, E, F, G)] with Serializable
- class Tuple8Serializer[A, B, C, D, E, F, G, H] extends KSerializer[(A, B, C, D, E, F, G, H)] with Serializable
- class Tuple9Serializer[A, B, C, D, E, F, G, H, I] extends KSerializer[(A, B, C, D, E, F, G, H, I)] with Serializable
- class VolatileByteRefSerializer extends KSerializer[VolatileByteRef]
- class WrappedArraySerializer[T] extends KSerializer[WrappedArray[T]]
Value Members
- def assertNotRegistered(cls: Class[_]): IKryoRegistrar
- def printIfRegistered(cls: Class[_]): IKryoRegistrar
- implicit def toInstantiator(fn: () ⇒ Kryo): KryoInstantiator
- implicit def toRegistrar(items: Iterable[IKryoRegistrar]): IKryoRegistrar
- implicit def toRegistrar(fn: (Kryo) ⇒ Unit): IKryoRegistrar
- implicit def toRich(k: Kryo): RichKryo
-
object
ClosureCleaner
Copied from Spark, written by Matei Zaharia (matei@cs.berkeley.edu).
Copied from Spark, written by Matei Zaharia (matei@cs.berkeley.edu).
Ported to ASM 4.0 and refactored for scalding/summingbird by Oscar Boykin
Original code: https://github.com/mesos/spark/blob/master/core/src/main/scala/spark/ClosureCleaner.scala
- object Externalizer extends Serializable
- object Instantiators
- object KryoSerializer
- object MeatLocker extends Serializable
- object ScalaKryoInstantiator extends Serializable
- object ScalaTupleSerialization extends Serializable