Class

com.roundeights.hasher

Foldable

Related Doc: package hasher

Permalink

class Foldable extends WithPlainText[Foldable]

A class designed for accumulating the values in a hash using a fold.

This class attempts to enforce ordered digest creation by rendering each instance unusable the each time you add a value. Adding a value then returns a new instance, which must be used for adding more data.

Presenting an API like this allows for more efficient code, while still maintaining an outwardly immutable API. It also helps prevent race conditions by ensuring continued forward motion.

Linear Supertypes
WithPlainText[Foldable], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Foldable
  2. WithPlainText
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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. def apply(value: PlainText): Foldable

    Permalink

    Add a value to this fodable

    Add a value to this fodable

    Definition Classes
    FoldableWithPlainText
  5. def apply(value: Source): Foldable

    Permalink

    Constructor for accepting Sources.

    Constructor for accepting Sources.

    Definition Classes
    WithPlainText
  6. def apply(value: Source, encoding: Codec): Foldable

    Permalink

    Constructor for accepting Sources.

    Constructor for accepting Sources.

    Definition Classes
    WithPlainText
  7. def apply(value: Reader): Foldable

    Permalink

    Constructor for accepting Readers.

    Constructor for accepting Readers.

    Definition Classes
    WithPlainText
  8. def apply(value: File): Foldable

    Permalink

    Constructor for accepting a File

    Constructor for accepting a File

    Definition Classes
    WithPlainText
  9. def apply(value: InputStream): Foldable

    Permalink

    Constructor for accepting an InputStream.

    Constructor for accepting an InputStream.

    Definition Classes
    WithPlainText
  10. def apply(value: StringBuilder): Foldable

    Permalink

    Constructor for accepting StringBuilders.

    Constructor for accepting StringBuilders.

    Definition Classes
    WithPlainText
  11. def apply(value: String): Foldable

    Permalink

    Constructor for accepting strings.

    Constructor for accepting strings.

    Definition Classes
    WithPlainText
  12. def apply(value: Array[Byte]): Foldable

    Permalink

    Constructor for accepting Byte arrays.

    Constructor for accepting Byte arrays.

    Definition Classes
    WithPlainText
  13. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  15. def done: Digest

    Permalink

    Mark that everything has been added to this foldable.

  16. final def eq(arg0: AnyRef): Boolean

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

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
  25. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  26. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  27. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from WithPlainText[Foldable]

Inherited from AnyRef

Inherited from Any

Ungrouped