void (int newHashSuffix, byte newHashSuffixDepth) { if (newHashSuffixDepth < 0 || newHashSuffixDepth > Integer.SIZE) { throw new IllegalArgumentException("hashSuffixDepth(=" + newHashSuffixDepth + ") must be in [0..32)"); } int mask = ~suffixMask(newHashSuffixDepth); if ((newHashSuffix & mask) != 0) { throw new IllegalArgumentException( "hashSuffix(=" + Integer.toBinaryString(newHashSuffix) + ") " + "must have no more than " + newHashSuffixDepth + " trailing bits " + "(mask: " + Integer.toBinaryString(mask) + ")" ); } segmentBuffer.put(HASH_SUFFIX_DEPTH_OFFSET, newHashSuffixDepth); segmentBuffer.putInt(HASH_SUFFIX_OFFSET, newHashSuffix); }