CLASS net/minecraft/class_5321 net/minecraft/registry/RegistryKey
	COMMENT Represents a key for a value in a registry in a context where a
	COMMENT root registry is available.
	COMMENT
	COMMENT @param <T> the type of the value
	COMMENT @see Registries#ROOT
	FIELD field_25136 INSTANCES Ljava/util/concurrent/ConcurrentMap;
		COMMENT A cache of all registry keys ever created.
	FIELD field_25137 registry Lnet/minecraft/class_2960;
		COMMENT The identifier of the registry in the root registry.
	FIELD field_25138 value Lnet/minecraft/class_2960;
		COMMENT The identifier of the value in the registry specified by {@link #registry}.
	METHOD <init> (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V
		ARG 1 registry
		ARG 2 value
	METHOD method_29177 getValue ()Lnet/minecraft/class_2960;
	METHOD method_29179 of (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321;
		COMMENT Creates a registry key for a value in a registry with a registry key for
		COMMENT the value-holding registry in the root registry and an identifier of the
		COMMENT value.
		COMMENT
		COMMENT <p>You can call it like {@code RegistryKey.of(Registry.ITEM_KEY, new Identifier("iron_ingot"))}
		COMMENT to create a registry key for iron ingot.
		COMMENT
		COMMENT @param <T> the type of the value
		ARG 0 registry
			COMMENT the registry key of the registry in the root registry
		ARG 1 value
			COMMENT the identifier of the value
	METHOD method_29180 ofRegistry (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321;
		COMMENT Creates a registry key for a registry in the root registry (registry of
		COMMENT all registries) with an identifier for the registry.
		COMMENT
		COMMENT <p>You can call it like {@code RegistryKey.of(new Identifier("block"))}
		COMMENT to create a registry key for the block registry.
		COMMENT
		COMMENT @param <T> the element type of the registry
		ARG 0 registry
			COMMENT the identifier of the registry
	METHOD method_29181 of (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321;
		ARG 0 registry
		ARG 1 value
	METHOD method_29182 (Lnet/minecraft/class_5321$class_7892;)Lnet/minecraft/class_5321;
		ARG 0 pair
	METHOD method_31163 isOf (Lnet/minecraft/class_5321;)Z
		COMMENT Returns whether this registry key belongs to the given registry (according to its type, not whether the registry actually contains this key).
		ARG 1 registry
			COMMENT the key of the registry that this registry key should be inside
	METHOD method_39154 createCodec (Lnet/minecraft/class_5321;)Lcom/mojang/serialization/Codec;
		ARG 0 registry
	METHOD method_39155 (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321;
		ARG 1 id
	METHOD method_39752 tryCast (Lnet/minecraft/class_5321;)Ljava/util/Optional;
		COMMENT {@return {@code Optional.of(this)} if the key is of {@code registryRef},
		COMMENT otherwise {@link Optional#empty}}
		COMMENT
		COMMENT @apiNote This can be used to safely cast an unknown key to {@code RegistryKey<E>}
		COMMENT by passing the registry {@code E}.
		ARG 1 registryRef
	METHOD method_41185 getRegistry ()Lnet/minecraft/class_2960;
	CLASS class_7892 RegistryIdPair
		FIELD comp_1150 id Lnet/minecraft/class_2960;
		METHOD comp_1150 id ()Lnet/minecraft/class_2960;
