com.google.common.hash
Interface Hasher

All Superinterfaces:
Sink

@Beta
public interface Hasher
extends Sink

A Sink that can compute a hash code after reading the input. Each hasher should translate all multibyte values (putInt(int), putLong(long), etc) to bytes in little-endian order.

Since:
11.0
Author:
Kevin Bourrillion

Method Summary
 HashCode hash()
          Computes a hash code based on the data that have been provided to this hasher.
 Hasher putBoolean(boolean b)
          Equivalent to putByte(b ? (byte) 1 : (byte) 0).
 Hasher putByte(byte b)
          Puts a byte into this sink.
 Hasher putBytes(byte[] bytes)
          Puts an array of bytes into this sink.
 Hasher putBytes(byte[] bytes, int off, int len)
          Puts a chunk of an array of bytes into this sink.
 Hasher putChar(char c)
          Puts a character into this sink.
 Hasher putDouble(double d)
          Equivalent to putLong(Double.doubleToRawLongBits(d)).
 Hasher putFloat(float f)
          Equivalent to putInt(Float.floatToRawIntBits(f)).
 Hasher putInt(int i)
          Puts an int into this sink.
 Hasher putLong(long l)
          Puts a long into this sink.
<T> Hasher
putObject(T instance, Funnel<? super T> funnel)
          A simple convenience for funnel.funnel(object, this).
 Hasher putShort(short s)
          Puts a short into this sink.
 Hasher putString(CharSequence charSequence)
          Equivalent to putBytes(charSequence.toString().getBytes(Charsets.UTF_16LE).
 Hasher putString(CharSequence charSequence, Charset charset)
          Equivalent to putBytes(charSequence.toString().getBytes(charset).
 

Method Detail

putByte

Hasher putByte(byte b)
Description copied from interface: Sink
Puts a byte into this sink.

Specified by:
putByte in interface Sink
Parameters:
b - a byte
Returns:
this instance

putBytes

Hasher putBytes(byte[] bytes)
Description copied from interface: Sink
Puts an array of bytes into this sink.

Specified by:
putBytes in interface Sink
Parameters:
bytes - a byte array
Returns:
this instance

putBytes

Hasher putBytes(byte[] bytes,
                int off,
                int len)
Description copied from interface: Sink
Puts a chunk of an array of bytes into this sink. bytes[off] is the first byte written, bytes[off + len - 1] is the last.

Specified by:
putBytes in interface Sink
Parameters:
bytes - a byte array
off - the start offset in the array
len - the number of bytes to write
Returns:
this instance

putShort

Hasher putShort(short s)
Description copied from interface: Sink
Puts a short into this sink.

Specified by:
putShort in interface Sink

putInt

Hasher putInt(int i)
Description copied from interface: Sink
Puts an int into this sink.

Specified by:
putInt in interface Sink

putLong

Hasher putLong(long l)
Description copied from interface: Sink
Puts a long into this sink.

Specified by:
putLong in interface Sink

putFloat

Hasher putFloat(float f)
Equivalent to putInt(Float.floatToRawIntBits(f)).

Specified by:
putFloat in interface Sink

putDouble

Hasher putDouble(double d)
Equivalent to putLong(Double.doubleToRawLongBits(d)).

Specified by:
putDouble in interface Sink

putBoolean

Hasher putBoolean(boolean b)
Equivalent to putByte(b ? (byte) 1 : (byte) 0).

Specified by:
putBoolean in interface Sink

putChar

Hasher putChar(char c)
Description copied from interface: Sink
Puts a character into this sink.

Specified by:
putChar in interface Sink

putString

Hasher putString(CharSequence charSequence)
Equivalent to putBytes(charSequence.toString().getBytes(Charsets.UTF_16LE).

Specified by:
putString in interface Sink

putString

Hasher putString(CharSequence charSequence,
                 Charset charset)
Equivalent to putBytes(charSequence.toString().getBytes(charset).

Specified by:
putString in interface Sink

putObject

<T> Hasher putObject(T instance,
                     Funnel<? super T> funnel)
A simple convenience for funnel.funnel(object, this).


hash

HashCode hash()
Computes a hash code based on the data that have been provided to this hasher. The result is unspecified if this method is called more than once on the same instance.



Copyright © 2010-2012. All Rights Reserved.