Create a new serializer that uses this serializer as a stepping stone.
Create a new serializer that uses this serializer as a stepping stone.
Create a new deserializer that changes the NBT type and uses this deserializer as a stepping stone.
Create a new deserializer that changes the NBT type and uses this deserializer as a stepping stone.
Convert a value from NBT.
Convert a value from NBT.
A safer version of NBTDeserializer.from that can't fail.
A safer version of NBTDeserializer.from that can't fail.
Map the result of running this deserializer.
Map the result of running this deserializer.
Maps the NBT that resulted from using this serializer.
Maps the NBT that resulted from using this serializer.
Modifies a nbt in value form before returning a new NBT.
Modifies a nbt in value form before returning a new NBT. Thew two types of NBT does not have to be the same.
The new value type
The new NBT type
The NBT to modify
The function to apply to the NBT
A view providing a way to get back to the world of NBTs after the modification.
val stringNbt: Option[NBTString] = NBTView.TagInt.modify(NBTInt(5))(_.toString)
Map the result of running this deserializer using a function that can fail.
Map the result of running this deserializer using a function that can fail.
Same as NBTView.modify except it uses SafeNBTDeserializer.fromSafe so the result isn't an option.
Same as NBTView.modify except it uses SafeNBTDeserializer.fromSafe so the result isn't an option.
Convert a value to NBT.
Convert a value to NBT.