Class RegistryReadingOps<T>

java.lang.Object
net.minecraft.util.dynamic.ForwardingDynamicOps<T>
net.minecraft.util.dynamic.RegistryReadingOps<T>
All Implemented Interfaces:
com.mojang.serialization.DynamicOps<T>

public class RegistryReadingOps<T>
extends ForwardingDynamicOps<T>
A dynamic ops that encode an id for a registry element rather than a full object.
See Also:
Encoder.encode(Object, DynamicOps, Object)
  • Field Details

  • Constructor Details

    • RegistryReadingOps

      private RegistryReadingOps​(com.mojang.serialization.DynamicOps<T> delegate, DynamicRegistryManager tracker)
  • Method Details

    • of

      public static <T> RegistryReadingOps<T> of​(com.mojang.serialization.DynamicOps<T> delegate, DynamicRegistryManager tracker)
    • encodeOrId

      protected <E> com.mojang.serialization.DataResult<T> encodeOrId​(E input, T prefix, RegistryKey<? extends Registry<E>> registryReference, com.mojang.serialization.Codec<E> codec)
      Encode an id for a registry element than a full object if possible.

      This method is called by casting an arbitrary dynamic ops to a registry reading ops.

      See Also:
      RegistryOps#decodeOrId(Object, RegistryKey, MapCodec)