Class RegistryKey<T>

java.lang.Object
net.minecraft.util.registry.RegistryKey<T>
Type Parameters:
T - the type of the value

public class RegistryKey<T> extends Object
Represents a key for a value in a registry in a context where a root registry is available.
See Also:
Mappings:
Namespace Name
official yg
intermediary net/minecraft/class_5321
named net/minecraft/util/registry/RegistryKey
  • Field Details

    • INSTANCES

      private static final Map<String,RegistryKey<?>> INSTANCES
      A cache of all registry keys ever created.
      Mappings:
      Namespace Name Mixin selector
      official a Lyg;a:Ljava/util/Map;
      intermediary field_25136 Lnet/minecraft/class_5321;field_25136:Ljava/util/Map;
      named INSTANCES Lnet/minecraft/util/registry/RegistryKey;INSTANCES:Ljava/util/Map;
    • registry

      private final Identifier registry
      The identifier of the registry in the root registry.
      Mappings:
      Namespace Name Mixin selector
      official b Lyg;b:Lyh;
      intermediary field_25137 Lnet/minecraft/class_5321;field_25137:Lnet/minecraft/class_2960;
      named registry Lnet/minecraft/util/registry/RegistryKey;registry:Lnet/minecraft/util/Identifier;
    • value

      private final Identifier value
      The identifier of the value in the registry specified by registry.
      Mappings:
      Namespace Name Mixin selector
      official c Lyg;c:Lyh;
      intermediary field_25138 Lnet/minecraft/class_5321;field_25138:Lnet/minecraft/class_2960;
      named value Lnet/minecraft/util/registry/RegistryKey;value:Lnet/minecraft/util/Identifier;
  • Constructor Details

    • RegistryKey

      private RegistryKey(Identifier registry, Identifier value)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lyg;<init>(Lyh;Lyh;)V
      intermediary <init> Lnet/minecraft/class_5321;<init>(Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V
      named <init> Lnet/minecraft/util/registry/RegistryKey;<init>(Lnet/minecraft/util/Identifier;Lnet/minecraft/util/Identifier;)V
  • Method Details

    • createCodec

      public static <T> com.mojang.serialization.Codec<RegistryKey<T>> createCodec(RegistryKey<? extends Registry<T>> registry)
      Mappings:
      Namespace Name Mixin selector
      official a Lyg;a(Lyg;)Lcom/mojang/serialization/Codec;
      intermediary method_39154 Lnet/minecraft/class_5321;method_39154(Lnet/minecraft/class_5321;)Lcom/mojang/serialization/Codec;
      named createCodec Lnet/minecraft/util/registry/RegistryKey;createCodec(Lnet/minecraft/util/registry/RegistryKey;)Lcom/mojang/serialization/Codec;
    • of

      public static <T> RegistryKey<T> of(RegistryKey<? extends Registry<T>> registry, Identifier value)
      Creates a registry key for a value in a registry with a registry key for the value-holding registry in the root registry and an identifier of the value.

      You can call it like RegistryKey.of(Registry.ITEM_KEY, new Identifier("iron_ingot")) to create a registry key for iron ingot.

      Type Parameters:
      T - the type of the value
      Parameters:
      registry - the registry key of the registry in the root registry
      value - the identifier of the value
      Mappings:
      Namespace Name Mixin selector
      official a Lyg;a(Lyg;Lyh;)Lyg;
      intermediary method_29179 Lnet/minecraft/class_5321;method_29179(Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321;
      named of Lnet/minecraft/util/registry/RegistryKey;of(Lnet/minecraft/util/registry/RegistryKey;Lnet/minecraft/util/Identifier;)Lnet/minecraft/util/registry/RegistryKey;
    • ofRegistry

      public static <T> RegistryKey<Registry<T>> ofRegistry(Identifier registry)
      Creates a registry key for a registry in the root registry (registry of all registries) with an identifier for the registry.

      You can call it like RegistryKey.of(new Identifier("block")) to create a registry key for the block registry.

      Type Parameters:
      T - the element type of the registry
      Parameters:
      registry - the identifier of the registry
      Mappings:
      Namespace Name Mixin selector
      official a Lyg;a(Lyh;)Lyg;
      intermediary method_29180 Lnet/minecraft/class_5321;method_29180(Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321;
      named ofRegistry Lnet/minecraft/util/registry/RegistryKey;ofRegistry(Lnet/minecraft/util/Identifier;)Lnet/minecraft/util/registry/RegistryKey;
    • of

      private static <T> RegistryKey<T> of(Identifier registry, Identifier value)
      Mappings:
      Namespace Name Mixin selector
      official a Lyg;a(Lyh;Lyh;)Lyg;
      intermediary method_29181 Lnet/minecraft/class_5321;method_29181(Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321;
      named of Lnet/minecraft/util/registry/RegistryKey;of(Lnet/minecraft/util/Identifier;Lnet/minecraft/util/Identifier;)Lnet/minecraft/util/registry/RegistryKey;
    • toString

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

      public boolean isOf(RegistryKey<? extends Registry<?>> registry)
      Returns whether this registry key belongs to the given registry (according to its type, not whether the registry actually contains this key).
      Parameters:
      registry - the key of the registry that this registry key should be inside
      Mappings:
      Namespace Name Mixin selector
      official b Lyg;b(Lyg;)Z
      intermediary method_31163 Lnet/minecraft/class_5321;method_31163(Lnet/minecraft/class_5321;)Z
      named isOf Lnet/minecraft/util/registry/RegistryKey;isOf(Lnet/minecraft/util/registry/RegistryKey;)Z
    • method_39752

      public <E> Optional<RegistryKey<E>> method_39752(RegistryKey<? extends Registry<E>> registryKey)
      Mappings:
      Namespace Name Mixin selector
      official c Lyg;c(Lyg;)Ljava/util/Optional;
      intermediary method_39752 Lnet/minecraft/class_5321;method_39752(Lnet/minecraft/class_5321;)Ljava/util/Optional;
      named method_39752 Lnet/minecraft/util/registry/RegistryKey;method_39752(Lnet/minecraft/util/registry/RegistryKey;)Ljava/util/Optional;
    • getValue

      public Identifier getValue()
      Mappings:
      Namespace Name Mixin selector
      official a Lyg;a()Lyh;
      intermediary method_29177 Lnet/minecraft/class_5321;method_29177()Lnet/minecraft/class_2960;
      named getValue Lnet/minecraft/util/registry/RegistryKey;getValue()Lnet/minecraft/util/Identifier;
    • createKeyFactory

      public static <T> Function<Identifier,RegistryKey<T>> createKeyFactory(RegistryKey<? extends Registry<T>> registry)
      Creates a function that converts an identifier to a registry key for the registry that registry refers to in the root registry.
      Parameters:
      registry - the reference to the value-holding registry in the root registry
      Mappings:
      Namespace Name Mixin selector
      official d Lyg;d(Lyg;)Ljava/util/function/Function;
      intermediary method_29178 Lnet/minecraft/class_5321;method_29178(Lnet/minecraft/class_5321;)Ljava/util/function/Function;
      named createKeyFactory Lnet/minecraft/util/registry/RegistryKey;createKeyFactory(Lnet/minecraft/util/registry/RegistryKey;)Ljava/util/function/Function;