package byteutils func ReadAvailableBytesToBuffer(target []byte, targetOffset int, source []byte, sourceOffset int, sourceLength int) int { availableBytes := sourceLength - sourceOffset requiredBytes := len(target) - targetOffset var bytesToRead int if availableBytes < requiredBytes { bytesToRead = availableBytes } else { bytesToRead = requiredBytes } copy(target[targetOffset:], source[sourceOffset:sourceOffset+bytesToRead]) return bytesToRead }