Package net.minecraft.nbt
Class NbtOps
java.lang.Object
net.minecraft.nbt.NbtOps
- All Implemented Interfaces:
com.mojang.serialization.DynamicOps<Tag>
public class NbtOps extends Object implements com.mojang.serialization.DynamicOps<Tag>
Used to handle Minecraft NBTs within
dynamics
for DataFixerUpper, allowing generalized serialization logic
shared across different type of data structures. Use INSTANCE
for the ops singleton.
For instance, dimension data may be stored as JSON in data packs, but they will be transported in packets as NBT. DataFixerUpper allows generalizing the dimension serialization logic to prevent duplicate code, where the NBT ops allow the DataFixerUpper dimension serialization logic to interact with Minecraft NBTs.
- See Also:
INSTANCE
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) class
NbtOps.MapBuilder
-
Field Summary
-
Constructor Summary
Constructors Modifier Constructor Description protected
NbtOps()
-
Method Summary
Modifier and Type Method Description <U> U
convertTo(com.mojang.serialization.DynamicOps<U> dynamicOps, Tag tag)
Tag
createBoolean(boolean bool)
Tag
createByte(byte byte2)
Tag
createByteList(ByteBuffer byteBuffer)
Tag
createDouble(double double2)
Tag
createFloat(float float2)
Tag
createInt(int int2)
Tag
createIntList(IntStream intStream)
Tag
createList(Stream<Tag> stream)
Tag
createLong(long long2)
Tag
createLongList(LongStream longStream)
Tag
createMap(Stream<com.mojang.datafixers.util.Pair<Tag,Tag>> stream)
Tag
createNumeric(Number number)
Tag
createShort(short short2)
Tag
createString(String string)
Tag
empty()
com.mojang.serialization.DataResult<ByteBuffer>
getByteBuffer(Tag tag)
com.mojang.serialization.DataResult<IntStream>
getIntStream(Tag tag)
com.mojang.serialization.DataResult<Consumer<Consumer<Tag>>>
getList(Tag tag)
com.mojang.serialization.DataResult<LongStream>
getLongStream(Tag tag)
com.mojang.serialization.DataResult<com.mojang.serialization.MapLike<Tag>>
getMap(Tag tag)
com.mojang.serialization.DataResult<Consumer<BiConsumer<Tag,Tag>>>
getMapEntries(Tag tag)
com.mojang.serialization.DataResult<Stream<com.mojang.datafixers.util.Pair<Tag,Tag>>>
getMapValues(Tag tag)
com.mojang.serialization.DataResult<Number>
getNumberValue(Tag tag)
com.mojang.serialization.DataResult<Stream<Tag>>
getStream(Tag tag)
com.mojang.serialization.DataResult<String>
getStringValue(Tag tag)
com.mojang.serialization.RecordBuilder<Tag>
mapBuilder()
com.mojang.serialization.DataResult<Tag>
mergeToList(Tag tag, List<Tag> list)
com.mojang.serialization.DataResult<Tag>
mergeToList(Tag tag, Tag tag2)
com.mojang.serialization.DataResult<Tag>
mergeToMap(Tag tag, com.mojang.serialization.MapLike<Tag> mapLike)
com.mojang.serialization.DataResult<Tag>
mergeToMap(Tag tag, Tag tag2, Tag tag3)
private static AbstractListTag<?>
method_29144(byte byte2, byte byte3)
private static boolean
method_29145(byte byte2, byte byte3, byte byte4)
private static <T extends Tag>
voidmethod_29150(AbstractListTag<T> abstractListTag, Tag tag, List<Tag> list)
private static <T extends Tag>
voidmethod_29151(AbstractListTag<T> abstractListTag, Tag tag, Tag tag2)
Tag
remove(Tag tag, String string)
String
toString()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.mojang.serialization.DynamicOps
compressMaps, convertList, convertMap, createMap, emptyList, emptyMap, get, getBooleanValue, getGeneric, getNumberValue, listBuilder, mergeToMap, mergeToPrimitive, set, update, updateGeneric, withDecoder, withEncoder, withParser
-
Field Details
-
INSTANCE
An singleton of the NBT dynamic ops.This ops does not compress maps (replace field name to value pairs with an ordered list of values in serialization). In fact, since Minecraft NBT lists can only contain elements of the same type, this op cannot compress maps.
-
-
Constructor Details
-
NbtOps
protected NbtOps()
-
-
Method Details
-
empty
- Specified by:
empty
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
convertTo
- Specified by:
convertTo
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
getNumberValue
- Specified by:
getNumberValue
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createNumeric
- Specified by:
createNumeric
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createByte
- Specified by:
createByte
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createShort
- Specified by:
createShort
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createInt
- Specified by:
createInt
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createLong
- Specified by:
createLong
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createFloat
- Specified by:
createFloat
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createDouble
- Specified by:
createDouble
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createBoolean
- Specified by:
createBoolean
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
getStringValue
- Specified by:
getStringValue
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createString
- Specified by:
createString
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
method_29144
-
method_29145
private static boolean method_29145(byte byte2, byte byte3, byte byte4) -
method_29151
private static <T extends Tag> void method_29151(AbstractListTag<T> abstractListTag, Tag tag, Tag tag2) -
method_29150
private static <T extends Tag> void method_29150(AbstractListTag<T> abstractListTag, Tag tag, List<Tag> list) -
mergeToList
- Specified by:
mergeToList
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
mergeToList
- Specified by:
mergeToList
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
mergeToMap
- Specified by:
mergeToMap
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
mergeToMap
public com.mojang.serialization.DataResult<Tag> mergeToMap(Tag tag, com.mojang.serialization.MapLike<Tag> mapLike)- Specified by:
mergeToMap
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
getMapValues
public com.mojang.serialization.DataResult<Stream<com.mojang.datafixers.util.Pair<Tag,Tag>>> getMapValues(Tag tag)- Specified by:
getMapValues
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
getMapEntries
- Specified by:
getMapEntries
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
getMap
- Specified by:
getMap
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createMap
- Specified by:
createMap
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
getStream
- Specified by:
getStream
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
getList
- Specified by:
getList
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
getByteBuffer
- Specified by:
getByteBuffer
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createByteList
- Specified by:
createByteList
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
getIntStream
- Specified by:
getIntStream
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createIntList
- Specified by:
createIntList
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
getLongStream
- Specified by:
getLongStream
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createLongList
- Specified by:
createLongList
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
createList
- Specified by:
createList
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
remove
- Specified by:
remove
in interfacecom.mojang.serialization.DynamicOps<Tag>
-
toString
-
mapBuilder
- Specified by:
mapBuilder
in interfacecom.mojang.serialization.DynamicOps<Tag>
-