All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.sourceforge.plantuml.brotli.Utils Maven / Gradle / Ivy

There is a newer version: 1.2024.8
Show newest version
// THIS FILE HAS BEEN GENERATED BY A PREPROCESSOR.

package net.sourceforge.plantuml.brotli;

import java.io.IOException;
import java.io.InputStream;

/**
 * A set of utility methods.
 */
final class Utils {

	private static final byte[] BYTE_ZEROES = new byte[1024];

	private static final int[] INT_ZEROES = new int[1024];

	/**
	 * Fills byte array with zeroes.
	 *
	 * 

* Current implementation uses {@link System#arraycopy}, so it should be used * for length not less than 16. * * @param dest array to fill with zeroes * @param start the first byte to fill * @param end the last byte to fill */ static void fillBytesWithZeroes(byte[] dest, int start, int end) { int cursor = start; while (cursor < end) { int step = Math.min(cursor + 1024, end) - cursor; System.arraycopy(BYTE_ZEROES, 0, dest, cursor, step); cursor += step; } } /** * Fills int array with zeroes. * *

* Current implementation uses {@link System#arraycopy}, so it should be used * for length not less than 16. * * @param dest array to fill with zeroes * @param start the first item to fill * @param end the last item to fill */ static void fillIntsWithZeroes(int[] dest, int start, int end) { int cursor = start; while (cursor < end) { int step = Math.min(cursor + 1024, end) - cursor; System.arraycopy(INT_ZEROES, 0, dest, cursor, step); cursor += step; } } static void copyBytesWithin(byte[] bytes, int target, int start, int end) { System.arraycopy(bytes, start, bytes, target, end - start); } static int readInput(InputStream src, byte[] dst, int offset, int length) { try { return src.read(dst, offset, length); } catch (IOException e) { throw new BrotliRuntimeException("Failed to read input", e); } } static void closeInput(InputStream src) throws IOException { src.close(); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy