Interface PrimitiveSink

All Known Subinterfaces:
Hasher

@CanIgnoreReturnValue
public interface PrimitiveSink
An object which can receive a stream of primitive values.
Since:
12.0 (in 11.0 as Sink)
Author:
Kevin Bourrillion
  • Method Details

    • putByte

      PrimitiveSink putByte​(byte b)
      Puts a byte into this sink.
      Parameters:
      b - a byte
      Returns:
      this instance
    • putBytes

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

      PrimitiveSink putBytes​(byte[] bytes, int off, int len)
      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
      Throws:
      java.lang.IndexOutOfBoundsException - if off < 0 or off + len > bytes.length or len < 0
    • putBytes

      PrimitiveSink putBytes​(java.nio.ByteBuffer bytes)
      Puts the remaining bytes of a byte buffer into this sink. bytes.position() is the first byte written, bytes.limit() - 1 is the last. The position of the buffer will be equal to the limit when this method returns.
      Parameters:
      bytes - a byte buffer
      Returns:
      this instance
      Since:
      23.0
    • putShort

      PrimitiveSink putShort​(short s)
      Puts a short into this sink.
    • putInt

      PrimitiveSink putInt​(int i)
      Puts an int into this sink.
    • putLong

      PrimitiveSink putLong​(long l)
      Puts a long into this sink.
    • putFloat

      PrimitiveSink putFloat​(float f)
      Puts a float into this sink.
    • putDouble

      PrimitiveSink putDouble​(double d)
      Puts a double into this sink.
    • putBoolean

      PrimitiveSink putBoolean​(boolean b)
      Puts a boolean into this sink.
    • putChar

      PrimitiveSink putChar​(char c)
      Puts a character into this sink.
    • putUnencodedChars

      PrimitiveSink putUnencodedChars​(java.lang.CharSequence charSequence)
      Puts each 16-bit code unit from the CharSequence into this sink.

      Warning: This method will produce different output than most other languages do when running on the equivalent input. For cross-language compatibility, use putString(java.lang.CharSequence, java.nio.charset.Charset), usually with a charset of UTF-8. For other use cases, use putUnencodedChars.

      Since:
      15.0 (since 11.0 as putString(CharSequence))
    • putString

      PrimitiveSink putString​(java.lang.CharSequence charSequence, java.nio.charset.Charset charset)
      Puts a string into this sink using the given charset.

      Warning: This method, which reencodes the input before processing it, is useful only for cross-language compatibility. For other use cases, prefer putUnencodedChars(java.lang.CharSequence), which is faster, produces the same output across Java releases, and processes every char in the input, even if some are invalid.