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) classNbtOps.MapBuilder -
Field Summary
-
Constructor Summary
Constructors Modifier Constructor Description protectedNbtOps() -
Method Summary
Modifier and Type Method Description <U> UconvertTo(com.mojang.serialization.DynamicOps<U> dynamicOps, Tag tag)TagcreateBoolean(boolean bool)TagcreateByte(byte byte2)TagcreateByteList(ByteBuffer byteBuffer)TagcreateDouble(double double2)TagcreateFloat(float float2)TagcreateInt(int int2)TagcreateIntList(IntStream intStream)TagcreateList(Stream<Tag> stream)TagcreateLong(long long2)TagcreateLongList(LongStream longStream)TagcreateMap(Stream<com.mojang.datafixers.util.Pair<Tag,Tag>> stream)TagcreateNumeric(Number number)TagcreateShort(short short2)TagcreateString(String string)Tagempty()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 booleanmethod_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)Tagremove(Tag tag, String string)StringtoString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods 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:
emptyin interfacecom.mojang.serialization.DynamicOps<Tag>
-
convertTo
- Specified by:
convertToin interfacecom.mojang.serialization.DynamicOps<Tag>
-
getNumberValue
- Specified by:
getNumberValuein interfacecom.mojang.serialization.DynamicOps<Tag>
-
createNumeric
- Specified by:
createNumericin interfacecom.mojang.serialization.DynamicOps<Tag>
-
createByte
- Specified by:
createBytein interfacecom.mojang.serialization.DynamicOps<Tag>
-
createShort
- Specified by:
createShortin interfacecom.mojang.serialization.DynamicOps<Tag>
-
createInt
- Specified by:
createIntin interfacecom.mojang.serialization.DynamicOps<Tag>
-
createLong
- Specified by:
createLongin interfacecom.mojang.serialization.DynamicOps<Tag>
-
createFloat
- Specified by:
createFloatin interfacecom.mojang.serialization.DynamicOps<Tag>
-
createDouble
- Specified by:
createDoublein interfacecom.mojang.serialization.DynamicOps<Tag>
-
createBoolean
- Specified by:
createBooleanin interfacecom.mojang.serialization.DynamicOps<Tag>
-
getStringValue
- Specified by:
getStringValuein interfacecom.mojang.serialization.DynamicOps<Tag>
-
createString
- Specified by:
createStringin 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:
mergeToListin interfacecom.mojang.serialization.DynamicOps<Tag>
-
mergeToList
- Specified by:
mergeToListin interfacecom.mojang.serialization.DynamicOps<Tag>
-
mergeToMap
- Specified by:
mergeToMapin interfacecom.mojang.serialization.DynamicOps<Tag>
-
mergeToMap
public com.mojang.serialization.DataResult<Tag> mergeToMap(Tag tag, com.mojang.serialization.MapLike<Tag> mapLike)- Specified by:
mergeToMapin interfacecom.mojang.serialization.DynamicOps<Tag>
-
getMapValues
public com.mojang.serialization.DataResult<Stream<com.mojang.datafixers.util.Pair<Tag,Tag>>> getMapValues(Tag tag)- Specified by:
getMapValuesin interfacecom.mojang.serialization.DynamicOps<Tag>
-
getMapEntries
- Specified by:
getMapEntriesin interfacecom.mojang.serialization.DynamicOps<Tag>
-
getMap
- Specified by:
getMapin interfacecom.mojang.serialization.DynamicOps<Tag>
-
createMap
- Specified by:
createMapin interfacecom.mojang.serialization.DynamicOps<Tag>
-
getStream
- Specified by:
getStreamin interfacecom.mojang.serialization.DynamicOps<Tag>
-
getList
- Specified by:
getListin interfacecom.mojang.serialization.DynamicOps<Tag>
-
getByteBuffer
- Specified by:
getByteBufferin interfacecom.mojang.serialization.DynamicOps<Tag>
-
createByteList
- Specified by:
createByteListin interfacecom.mojang.serialization.DynamicOps<Tag>
-
getIntStream
- Specified by:
getIntStreamin interfacecom.mojang.serialization.DynamicOps<Tag>
-
createIntList
- Specified by:
createIntListin interfacecom.mojang.serialization.DynamicOps<Tag>
-
getLongStream
- Specified by:
getLongStreamin interfacecom.mojang.serialization.DynamicOps<Tag>
-
createLongList
- Specified by:
createLongListin interfacecom.mojang.serialization.DynamicOps<Tag>
-
createList
- Specified by:
createListin interfacecom.mojang.serialization.DynamicOps<Tag>
-
remove
- Specified by:
removein interfacecom.mojang.serialization.DynamicOps<Tag>
-
toString
-
mapBuilder
- Specified by:
mapBuilderin interfacecom.mojang.serialization.DynamicOps<Tag>
-