Remove some warnings

Signed-off-by: TheMode <themode@outlook.fr>
This commit is contained in:
TheMode 2021-12-16 01:22:42 +01:00
parent d18f07dcd5
commit 49a64dd702

View File

@ -13,7 +13,6 @@ import org.jglrxavpok.hephaistos.nbt.mutable.MutableNBTCompound;
import org.jglrxavpok.hephaistos.parser.SNBTParser; import org.jglrxavpok.hephaistos.parser.SNBTParser;
import java.io.StringReader; import java.io.StringReader;
import java.util.Objects;
import java.util.function.BiConsumer; import java.util.function.BiConsumer;
import java.util.function.Function; import java.util.function.Function;
import java.util.function.Supplier; import java.util.function.Supplier;
@ -60,23 +59,21 @@ public class Tag<T> {
private final String key; private final String key;
private final Function<NBTCompoundLike, T> readFunction; private final Function<NBTCompoundLike, T> readFunction;
private final BiConsumer<MutableNBTCompound, T> writeConsumer; private final BiConsumer<MutableNBTCompound, T> writeConsumer;
private final Supplier<T> defaultValue; private final Supplier<T> defaultValue;
protected Tag(@Nullable String key, protected Tag(@Nullable String key,
@NotNull Function<NBTCompoundLike, T> readFunction, @NotNull Function<NBTCompoundLike, T> readFunction,
@Nullable BiConsumer<MutableNBTCompound, T> writeConsumer, @NotNull BiConsumer<MutableNBTCompound, T> writeConsumer,
@Nullable Supplier<T> defaultValue) { @Nullable Supplier<T> defaultValue) {
this.key = key; this.key = key;
this.readFunction = readFunction; this.readFunction = readFunction;
this.writeConsumer = Objects.requireNonNullElse(writeConsumer, (compound, t) -> { this.writeConsumer = writeConsumer;
});
this.defaultValue = defaultValue; this.defaultValue = defaultValue;
} }
protected Tag(@Nullable String key, protected Tag(@Nullable String key,
@NotNull Function<NBTCompoundLike, T> readFunction, @NotNull Function<NBTCompoundLike, T> readFunction,
@Nullable BiConsumer<MutableNBTCompound, T> writeConsumer) { @NotNull BiConsumer<MutableNBTCompound, T> writeConsumer) {
this(key, readFunction, writeConsumer, null); this(key, readFunction, writeConsumer, null);
} }
@ -146,6 +143,7 @@ public class Tag<T> {
} }
public void writeUnsafe(@NotNull MutableNBTCompound nbtCompound, @Nullable Object value) { public void writeUnsafe(@NotNull MutableNBTCompound nbtCompound, @Nullable Object value) {
//noinspection unchecked
write(nbtCompound, (T) value); write(nbtCompound, (T) value);
} }
@ -198,11 +196,9 @@ public class Tag<T> {
} }
public static <T extends NBT> @NotNull Tag<T> NBT(@NotNull String key) { public static <T extends NBT> @NotNull Tag<T> NBT(@NotNull String key) {
//noinspection unchecked
return new Tag<>(key, return new Tag<>(key,
nbt -> { nbt -> (T) nbt.get(key),
final var currentNBT = nbt.get(key);
return (T) currentNBT;
},
((nbt, value) -> nbt.set(key, value))); ((nbt, value) -> nbt.set(key, value)));
} }