Class AbstractByteHasher

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.nio.ByteBuffer scratch  
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      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 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.
      protected abstract void update​(byte b)
      Updates this hasher with the given byte.
      protected void update​(byte[] b)
      Updates this hasher with the given bytes.
      protected void update​(byte[] b, int off, int len)
      Updates this hasher with len bytes starting at off in the given buffer.
      private Hasher update​(int bytes)
      Updates the sink with the given number of bytes from the buffer.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • scratch

        private final java.nio.ByteBuffer scratch
    • Constructor Detail

      • AbstractByteHasher

        AbstractByteHasher()
    • Method Detail

      • update

        protected abstract void update​(byte b)
        Updates this hasher with the given byte.
      • update

        protected void update​(byte[] b)
        Updates this hasher with the given bytes.
      • update

        protected void update​(byte[] b,
                              int off,
                              int len)
        Updates this hasher with len bytes starting at off in the given buffer.
      • putByte

        public Hasher putByte​(byte b)
        Description copied from interface: PrimitiveSink
        Puts a byte into this sink.
        Parameters:
        b - a byte
        Returns:
        this instance
      • putBytes

        public Hasher putBytes​(byte[] bytes)
        Description copied from interface: PrimitiveSink
        Puts an array of bytes into this sink.
        Parameters:
        bytes - a byte array
        Returns:
        this instance
      • putBytes

        public Hasher putBytes​(byte[] bytes,
                               int off,
                               int len)
        Description copied from interface: PrimitiveSink
        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.
        Parameters:
        bytes - a byte array
        off - the start offset in the array
        len - the number of bytes to write
        Returns:
        this instance
      • update

        private Hasher update​(int bytes)
        Updates the sink with the given number of bytes from the buffer.
      • putShort

        public Hasher putShort​(short s)
        Description copied from interface: PrimitiveSink
        Puts a short into this sink.
      • putInt

        public Hasher putInt​(int i)
        Description copied from interface: PrimitiveSink
        Puts an int into this sink.
      • putLong

        public Hasher putLong​(long l)
        Description copied from interface: PrimitiveSink
        Puts a long into this sink.
      • putChar

        public Hasher putChar​(char c)
        Description copied from interface: PrimitiveSink
        Puts a character into this sink.
      • putObject

        public <T> Hasher putObject​(T instance,
                                    Funnel<? super T> funnel)
        Description copied from interface: Hasher
        A simple convenience for funnel.funnel(object, this).