summaryrefslogtreecommitdiff
path: root/src/main/java/lv/enes/mc/eris_alchemy/utils/BufUtils.java
blob: 9d8fe82668f530a876ac2da77d910bf0e15176e9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package lv.enes.mc.eris_alchemy.utils;

import io.netty.buffer.ByteBuf;
import net.minecraft.network.FriendlyByteBuf;

import java.util.OptionalDouble;

public final class BufUtils {
	private BufUtils() {}

	public static OptionalDouble readOptionalDouble(FriendlyByteBuf buf) {
		return buf.readOptional(ByteBuf::readDouble).stream().mapToDouble(x -> x).findFirst();
	}

	@SuppressWarnings("OptionalUsedAsFieldOrParameterType")
	public static void writeOptionalDouble(FriendlyByteBuf buf, OptionalDouble value) {
		var convert = value.stream().boxed().findFirst();
		buf.writeOptional(convert, ByteBuf::writeDoubleLE);
	}
}