com.twitter.scalding.serialization

OrderedSerialization

trait OrderedSerialization[T] extends Ordering[T] with Serialization[T]

In large-scale partitioning algorithms, we often use sorting. This typeclass represents something we can efficiently serialize with an added law: that we can (hopefully fast) compare the raw data.

Linear Supertypes
Serialization[T], Hashing[T], Ordering[T], PartialOrdering[T], Equiv[T], Serializable, Serializable, Comparator[T], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. OrderedSerialization
  2. Serialization
  3. Hashing
  4. Ordering
  5. PartialOrdering
  6. Equiv
  7. Serializable
  8. Serializable
  9. Comparator
  10. AnyRef
  11. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. class Ops extends AnyRef

    Definition Classes
    Ordering

Abstract Value Members

  1. abstract def compare(x: T, y: T): Int

    Definition Classes
    Ordering → Comparator
  2. abstract def compareBinary(a: InputStream, b: InputStream): Result

    This compares two InputStreams.

    This compares two InputStreams. After this call, the position in the InputStreams is mutated to be the end of the record.

  3. abstract def dynamicSize(t: T): Option[Int]

    returns Some if the size is cheap to calculate.

    returns Some if the size is cheap to calculate. otherwise the caller should just serialize into an ByteArrayOutputStream

    Definition Classes
    Serialization
  4. abstract def hash(x: T): Int

    Definition Classes
    Hashing
  5. abstract def read(in: InputStream): Try[T]

    Definition Classes
    Serialization
  6. abstract def staticSize: Option[Int]

    If all items have a static size, this returns Some, else None NOTE: lawful implementations that return Some here much return Some on dynamicSize so callers don't need to check both when they have an instance.

    If all items have a static size, this returns Some, else None NOTE: lawful implementations that return Some here much return Some on dynamicSize so callers don't need to check both when they have an instance.

    Definition Classes
    Serialization
  7. abstract def write(out: OutputStream, t: T): Try[Unit]

    Definition Classes
    Serialization

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

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

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

    Definition Classes
    AnyRef → Any
  10. def equiv(x: T, y: T): Boolean

    Definition Classes
    Ordering → PartialOrdering → Equiv
  11. def finalize(): Unit

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

    Definition Classes
    AnyRef → Any
  13. def gt(x: T, y: T): Boolean

    Definition Classes
    Ordering → PartialOrdering
  14. def gteq(x: T, y: T): Boolean

    Definition Classes
    Ordering → PartialOrdering
  15. def hashCode(): Int

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

    Definition Classes
    Any
  17. def lt(x: T, y: T): Boolean

    Definition Classes
    Ordering → PartialOrdering
  18. def lteq(x: T, y: T): Boolean

    Definition Classes
    Ordering → PartialOrdering
  19. def max(x: T, y: T): T

    Definition Classes
    Ordering
  20. def min(x: T, y: T): T

    Definition Classes
    Ordering
  21. implicit def mkOrderingOps(lhs: T): Ops

    Definition Classes
    Ordering
  22. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  23. final def notify(): Unit

    Definition Classes
    AnyRef
  24. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  25. def on[U](f: (U) ⇒ T): Ordering[U]

    Definition Classes
    Ordering
  26. def reverse: Ordering[T]

    Definition Classes
    Ordering → PartialOrdering
  27. def reversed(): Comparator[T]

    Definition Classes
    Comparator
  28. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  29. def thenComparing[U <: Comparable[_ >: U]](arg0: Function[_ >: T, _ <: U]): Comparator[T]

    Definition Classes
    Comparator
  30. def thenComparing[U](arg0: Function[_ >: T, _ <: U], arg1: Comparator[_ >: U]): Comparator[T]

    Definition Classes
    Comparator
  31. def thenComparing(arg0: Comparator[_ >: T]): Comparator[T]

    Definition Classes
    Comparator
  32. def thenComparingDouble(arg0: ToDoubleFunction[_ >: T]): Comparator[T]

    Definition Classes
    Comparator
  33. def thenComparingInt(arg0: ToIntFunction[_ >: T]): Comparator[T]

    Definition Classes
    Comparator
  34. def thenComparingLong(arg0: ToLongFunction[_ >: T]): Comparator[T]

    Definition Classes
    Comparator
  35. def toString(): String

    Definition Classes
    AnyRef → Any
  36. def tryCompare(x: T, y: T): Some[Int]

    Definition Classes
    Ordering → PartialOrdering
  37. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serialization[T]

Inherited from Hashing[T]

Inherited from Ordering[T]

Inherited from PartialOrdering[T]

Inherited from Equiv[T]

Inherited from Serializable

Inherited from Serializable

Inherited from Comparator[T]

Inherited from AnyRef

Inherited from Any

Ungrouped