Class NbtOps

java.lang.Object
net.minecraft.nbt.NbtOps
All Implemented Interfaces:
com.mojang.serialization.DynamicOps<NbtElement>

public class NbtOps extends Object implements com.mojang.serialization.DynamicOps<NbtElement>
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:
Mappings:
Namespace Name
official qq
intermediary net/minecraft/class_2509
named net/minecraft/nbt/NbtOps
  • Field Details

    • INSTANCE

      public static final NbtOps 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.

      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a:Lqq;
      intermediary field_11560 Lnet/minecraft/class_2509;field_11560:Lnet/minecraft/class_2509;
      named INSTANCE Lnet/minecraft/nbt/NbtOps;INSTANCE:Lnet/minecraft/nbt/NbtOps;
    • MARKER_KEY

      private static final String MARKER_KEY
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official b Lqq;b:Ljava/lang/String;
      intermediary field_40667 Lnet/minecraft/class_2509;field_40667:Ljava/lang/String;
      named MARKER_KEY Lnet/minecraft/nbt/NbtOps;MARKER_KEY:Ljava/lang/String;
  • Constructor Details

    • NbtOps

      protected NbtOps()
  • Method Details

    • method_10668

      public NbtElement method_10668()
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a()Lqy;
      intermediary method_10668 Lnet/minecraft/class_2509;method_10668()Lnet/minecraft/class_2520;
      named method_10668 Lnet/minecraft/nbt/NbtOps;method_10668()Lnet/minecraft/nbt/NbtElement;
    • method_29146

      public <U> U method_29146(com.mojang.serialization.DynamicOps<U> dynamicOps, NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Lcom/mojang/serialization/DynamicOps;Lqy;)Ljava/lang/Object;
      intermediary method_29146 Lnet/minecraft/class_2509;method_29146(Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_2520;)Ljava/lang/Object;
      named method_29146 Lnet/minecraft/nbt/NbtOps;method_29146(Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/nbt/NbtElement;)Ljava/lang/Object;
    • method_10645

      public com.mojang.serialization.DataResult<Number> method_10645(NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_10645 Lnet/minecraft/class_2509;method_10645(Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_10645 Lnet/minecraft/nbt/NbtOps;method_10645(Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_10660

      public NbtElement method_10660(Number number)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Ljava/lang/Number;)Lqy;
      intermediary method_10660 Lnet/minecraft/class_2509;method_10660(Ljava/lang/Number;)Lnet/minecraft/class_2520;
      named method_10660 Lnet/minecraft/nbt/NbtOps;method_10660(Ljava/lang/Number;)Lnet/minecraft/nbt/NbtElement;
    • method_10640

      public NbtElement method_10640(byte byte2)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(B)Lqy;
      intermediary method_10640 Lnet/minecraft/class_2509;method_10640(B)Lnet/minecraft/class_2520;
      named method_10640 Lnet/minecraft/nbt/NbtOps;method_10640(B)Lnet/minecraft/nbt/NbtElement;
    • method_10635

      public NbtElement method_10635(short short2)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(S)Lqy;
      intermediary method_10635 Lnet/minecraft/class_2509;method_10635(S)Lnet/minecraft/class_2520;
      named method_10635 Lnet/minecraft/nbt/NbtOps;method_10635(S)Lnet/minecraft/nbt/NbtElement;
    • method_10661

      public NbtElement method_10661(int int2)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(I)Lqy;
      intermediary method_10661 Lnet/minecraft/class_2509;method_10661(I)Lnet/minecraft/class_2520;
      named method_10661 Lnet/minecraft/nbt/NbtOps;method_10661(I)Lnet/minecraft/nbt/NbtElement;
    • method_10654

      public NbtElement method_10654(long long2)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(J)Lqy;
      intermediary method_10654 Lnet/minecraft/class_2509;method_10654(J)Lnet/minecraft/class_2520;
      named method_10654 Lnet/minecraft/nbt/NbtOps;method_10654(J)Lnet/minecraft/nbt/NbtElement;
    • method_10662

      public NbtElement method_10662(float float2)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(F)Lqy;
      intermediary method_10662 Lnet/minecraft/class_2509;method_10662(F)Lnet/minecraft/class_2520;
      named method_10662 Lnet/minecraft/nbt/NbtOps;method_10662(F)Lnet/minecraft/nbt/NbtElement;
    • method_10652

      public NbtElement method_10652(double double2)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(D)Lqy;
      intermediary method_10652 Lnet/minecraft/class_2509;method_10652(D)Lnet/minecraft/class_2520;
      named method_10652 Lnet/minecraft/nbt/NbtOps;method_10652(D)Lnet/minecraft/nbt/NbtElement;
    • method_23253

      public NbtElement method_23253(boolean bool)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Z)Lqy;
      intermediary method_23253 Lnet/minecraft/class_2509;method_23253(Z)Lnet/minecraft/class_2520;
      named method_23253 Lnet/minecraft/nbt/NbtOps;method_23253(Z)Lnet/minecraft/nbt/NbtElement;
    • method_10656

      public com.mojang.serialization.DataResult<String> method_10656(NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official b Lqq;b(Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_10656 Lnet/minecraft/class_2509;method_10656(Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_10656 Lnet/minecraft/nbt/NbtOps;method_10656(Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_10639

      public NbtElement method_10639(String string)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Ljava/lang/String;)Lqy;
      intermediary method_10639 Lnet/minecraft/class_2509;method_10639(Ljava/lang/String;)Lnet/minecraft/class_2520;
      named method_10639 Lnet/minecraft/nbt/NbtOps;method_10639(Ljava/lang/String;)Lnet/minecraft/nbt/NbtElement;
    • method_29156

      public com.mojang.serialization.DataResult<NbtElement> method_29156(NbtElement nbtElement, NbtElement nbtElement2)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Lqy;Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_29156 Lnet/minecraft/class_2509;method_29156(Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_29156 Lnet/minecraft/nbt/NbtOps;method_29156(Lnet/minecraft/nbt/NbtElement;Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_29155

      public com.mojang.serialization.DataResult<NbtElement> method_29155(NbtElement nbtElement, List<NbtElement> list)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Lqy;Ljava/util/List;)Lcom/mojang/serialization/DataResult;
      intermediary method_29155 Lnet/minecraft/class_2509;method_29155(Lnet/minecraft/class_2520;Ljava/util/List;)Lcom/mojang/serialization/DataResult;
      named method_29155 Lnet/minecraft/nbt/NbtOps;method_29155(Lnet/minecraft/nbt/NbtElement;Ljava/util/List;)Lcom/mojang/serialization/DataResult;
    • method_29157

      public com.mojang.serialization.DataResult<NbtElement> method_29157(NbtElement nbtElement, NbtElement nbtElement2, NbtElement nbtElement3)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Lqy;Lqy;Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_29157 Lnet/minecraft/class_2509;method_29157(Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_29157 Lnet/minecraft/nbt/NbtOps;method_29157(Lnet/minecraft/nbt/NbtElement;Lnet/minecraft/nbt/NbtElement;Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_29154

      public com.mojang.serialization.DataResult<NbtElement> method_29154(NbtElement nbtElement, com.mojang.serialization.MapLike<NbtElement> mapLike)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Lqy;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult;
      intermediary method_29154 Lnet/minecraft/class_2509;method_29154(Lnet/minecraft/class_2520;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult;
      named method_29154 Lnet/minecraft/nbt/NbtOps;method_29154(Lnet/minecraft/nbt/NbtElement;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult;
    • method_10669

      public com.mojang.serialization.DataResult<Stream<com.mojang.datafixers.util.Pair<NbtElement,NbtElement>>> method_10669(NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official c Lqq;c(Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_10669 Lnet/minecraft/class_2509;method_10669(Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_10669 Lnet/minecraft/nbt/NbtOps;method_10669(Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_29162

      public com.mojang.serialization.DataResult<Consumer<BiConsumer<NbtElement,NbtElement>>> method_29162(NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official d Lqq;d(Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_29162 Lnet/minecraft/class_2509;method_29162(Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_29162 Lnet/minecraft/nbt/NbtOps;method_29162(Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_29163

      public com.mojang.serialization.DataResult<com.mojang.serialization.MapLike<NbtElement>> method_29163(NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official e Lqq;e(Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_29163 Lnet/minecraft/class_2509;method_29163(Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_29163 Lnet/minecraft/nbt/NbtOps;method_29163(Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_10655

      public NbtElement method_10655(Stream<com.mojang.datafixers.util.Pair<NbtElement,NbtElement>> stream)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Ljava/util/stream/Stream;)Lqy;
      intermediary method_10655 Lnet/minecraft/class_2509;method_10655(Ljava/util/stream/Stream;)Lnet/minecraft/class_2520;
      named method_10655 Lnet/minecraft/nbt/NbtOps;method_10655(Ljava/util/stream/Stream;)Lnet/minecraft/nbt/NbtElement;
    • method_46232

      private static NbtElement method_46232(NbtCompound nbtCompound)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Lqf;)Lqy;
      intermediary method_46232 Lnet/minecraft/class_2509;method_46232(Lnet/minecraft/class_2487;)Lnet/minecraft/class_2520;
      named method_46232 Lnet/minecraft/nbt/NbtOps;method_46232(Lnet/minecraft/nbt/NbtCompound;)Lnet/minecraft/nbt/NbtElement;
    • method_10664

      public com.mojang.serialization.DataResult<Stream<NbtElement>> method_10664(NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official f Lqq;f(Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_10664 Lnet/minecraft/class_2509;method_10664(Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_10664 Lnet/minecraft/nbt/NbtOps;method_10664(Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_29164

      public com.mojang.serialization.DataResult<Consumer<Consumer<NbtElement>>> method_29164(NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official g Lqq;g(Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_29164 Lnet/minecraft/class_2509;method_29164(Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_29164 Lnet/minecraft/nbt/NbtOps;method_29164(Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_10646

      public com.mojang.serialization.DataResult<ByteBuffer> method_10646(NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official h Lqq;h(Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_10646 Lnet/minecraft/class_2509;method_10646(Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_10646 Lnet/minecraft/nbt/NbtOps;method_10646(Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_10657

      public NbtElement method_10657(ByteBuffer byteBuffer)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Ljava/nio/ByteBuffer;)Lqy;
      intermediary method_10657 Lnet/minecraft/class_2509;method_10657(Ljava/nio/ByteBuffer;)Lnet/minecraft/class_2520;
      named method_10657 Lnet/minecraft/nbt/NbtOps;method_10657(Ljava/nio/ByteBuffer;)Lnet/minecraft/nbt/NbtElement;
    • method_10651

      public com.mojang.serialization.DataResult<IntStream> method_10651(NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official i Lqq;i(Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_10651 Lnet/minecraft/class_2509;method_10651(Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_10651 Lnet/minecraft/nbt/NbtOps;method_10651(Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_10663

      public NbtElement method_10663(IntStream intStream)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Ljava/util/stream/IntStream;)Lqy;
      intermediary method_10663 Lnet/minecraft/class_2509;method_10663(Ljava/util/stream/IntStream;)Lnet/minecraft/class_2520;
      named method_10663 Lnet/minecraft/nbt/NbtOps;method_10663(Ljava/util/stream/IntStream;)Lnet/minecraft/nbt/NbtElement;
    • method_10637

      public com.mojang.serialization.DataResult<LongStream> method_10637(NbtElement nbtElement)
      Mappings:
      Namespace Name Mixin selector
      official j Lqq;j(Lqy;)Lcom/mojang/serialization/DataResult;
      intermediary method_10637 Lnet/minecraft/class_2509;method_10637(Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult;
      named method_10637 Lnet/minecraft/nbt/NbtOps;method_10637(Lnet/minecraft/nbt/NbtElement;)Lcom/mojang/serialization/DataResult;
    • method_10643

      public NbtElement method_10643(LongStream longStream)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Ljava/util/stream/LongStream;)Lqy;
      intermediary method_10643 Lnet/minecraft/class_2509;method_10643(Ljava/util/stream/LongStream;)Lnet/minecraft/class_2520;
      named method_10643 Lnet/minecraft/nbt/NbtOps;method_10643(Ljava/util/stream/LongStream;)Lnet/minecraft/nbt/NbtElement;
    • method_10665

      public NbtElement method_10665(Stream<NbtElement> stream)
      Mappings:
      Namespace Name Mixin selector
      official b Lqq;b(Ljava/util/stream/Stream;)Lqy;
      intermediary method_10665 Lnet/minecraft/class_2509;method_10665(Ljava/util/stream/Stream;)Lnet/minecraft/class_2520;
      named method_10665 Lnet/minecraft/nbt/NbtOps;method_10665(Ljava/util/stream/Stream;)Lnet/minecraft/nbt/NbtElement;
    • method_10648

      public NbtElement method_10648(NbtElement nbtElement, String string)
      Mappings:
      Namespace Name Mixin selector
      official a Lqq;a(Lqy;Ljava/lang/String;)Lqy;
      intermediary method_10648 Lnet/minecraft/class_2509;method_10648(Lnet/minecraft/class_2520;Ljava/lang/String;)Lnet/minecraft/class_2520;
      named method_10648 Lnet/minecraft/nbt/NbtOps;method_10648(Lnet/minecraft/nbt/NbtElement;Ljava/lang/String;)Lnet/minecraft/nbt/NbtElement;
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • mapBuilder

      public com.mojang.serialization.RecordBuilder<NbtElement> mapBuilder()
      Specified by:
      mapBuilder in interface com.mojang.serialization.DynamicOps<NbtElement>
    • createMerger

      private static Optional<NbtOps.Merger> createMerger(NbtElement nbt)
      Mappings:
      Namespace Name Mixin selector
      official k Lqq;k(Lqy;)Ljava/util/Optional;
      intermediary method_46235 Lnet/minecraft/class_2509;method_46235(Lnet/minecraft/class_2520;)Ljava/util/Optional;
      named createMerger Lnet/minecraft/nbt/NbtOps;createMerger(Lnet/minecraft/nbt/NbtElement;)Ljava/util/Optional;