Package net.minecraft.util.registry
Class MutableRegistry<T>
java.lang.Object
net.minecraft.util.registry.Registry<T>
net.minecraft.util.registry.MutableRegistry<T>
- All Implemented Interfaces:
com.mojang.serialization.Codec<T>
,com.mojang.serialization.Decoder<T>
,com.mojang.serialization.Encoder<T>
,com.mojang.serialization.Keyable
,Iterable<T>
,IndexedIterable<T>
- Direct Known Subclasses:
SimpleRegistry
public abstract class MutableRegistry<T> extends Registry<T>
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.mojang.serialization.Codec
com.mojang.serialization.Codec.ResultFunction<A extends Object>
-
Field Summary
Fields inherited from class net.minecraft.util.registry.Registry
ACTIVITY, ACTIVITY_KEY, ATTRIBUTE, ATTRIBUTE_KEY, BIOME_KEY, BIOME_SOURCE, BIOME_SOURCE_KEY, BLOCK, BLOCK_ENTITY_TYPE, BLOCK_ENTITY_TYPE_KEY, BLOCK_KEY, BLOCK_PLACER_TYPE, BLOCK_PLACER_TYPE_KEY, BLOCK_STATE_PROVIDER_TYPE, BLOCK_STATE_PROVIDER_TYPE_KEY, CARVER, CARVER_KEY, CHUNK_GENERATOR, CHUNK_GENERATOR_KEY, CHUNK_STATUS, CHUNK_STATUS_KEY, CONFIGURED_CARVER_WORLDGEN, CONFIGURED_FEATURE_WORLDGEN, CONFIGURED_STRUCTURE_FEATURE_WORLDGEN, CONFIGURED_SURFACE_BUILDER_WORLDGEN, CUSTOM_STAT, CUSTOM_STAT_KEY, DECORATOR, DECORATOR_KEY, DIMENSION, DIMENSION_OPTIONS, DIMENSION_TYPE_KEY, ENCHANTMENT, ENCHANTMENT_KEY, ENTITY_TYPE, ENTITY_TYPE_KEY, FEATURE, FEATURE_KEY, FEATURE_SIZE_TYPE, FEATURE_SIZE_TYPE_KEY, FLUID, FLUID_KEY, FOLIAGE_PLACER_TYPE, FOLIAGE_PLACER_TYPE_KEY, ITEM, ITEM_KEY, LOGGER, LOOT_CONDITION_TYPE, LOOT_CONDITION_TYPE_KEY, LOOT_FUNCTION_TYPE, LOOT_FUNCTION_TYPE_KEY, LOOT_POOL_ENTRY_TYPE, LOOT_POOL_ENTRY_TYPE_KEY, MEMORY_MODULE_TYPE, MEMORY_MODULE_TYPE_KEY, MENU_KEY, MOB_EFFECT_KEY, MOTIVE_KEY, NOISE_SETTINGS_WORLDGEN, PAINTING_MOTIVE, PARTICLE_TYPE, PARTICLE_TYPE_KEY, POINT_OF_INTEREST_TYPE, POINT_OF_INTEREST_TYPE_KEY, POS_RULE_TEST, POS_RULE_TEST_KEY, POTION, POTION_KEY, PROCESSOR_LIST_WORLDGEN, RECIPE_SERIALIZER, RECIPE_SERIALIZER_KEY, RECIPE_TYPE, RECIPE_TYPE_KEY, REGISTRIES, ROOT, ROOT_KEY, RULE_TEST, RULE_TEST_KEY, SCHEDULE, SCHEDULE_KEY, SCREEN_HANDLER, SENSOR_TYPE, SENSOR_TYPE_KEY, SOUND_EVENT, SOUND_EVENT_KEY, STAT_TYPE, STAT_TYPE_KEY, STATUS_EFFECT, STRUCTURE_FEATURE, STRUCTURE_FEATURE_KEY, STRUCTURE_PIECE, STRUCTURE_PIECE_KEY, STRUCTURE_POOL_ELEMENT, STRUCTURE_POOL_ELEMENT_KEY, STRUCTURE_PROCESSOR, STRUCTURE_PROCESSOR_KEY, SURFACE_BUILD_KEY, SURFACE_BUILDER, TEMPLATE_POOL_WORLDGEN, TREE_DECORATOR_TYPE, TREE_DECORATOR_TYPE_KEY, TRUNK_PLACER_TYPE, TRUNK_PLACER_TYPE_KEY, VILLAGER_PROFESSION, VILLAGER_PROFESSION_KEY, VILLAGER_TYPE, VILLAGER_TYPE_KEY
Fields inherited from interface com.mojang.serialization.Codec
BOOL, BYTE, BYTE_BUFFER, DOUBLE, EMPTY, FLOAT, INT, INT_STREAM, LONG, LONG_STREAM, PASSTHROUGH, SHORT, STRING
-
Constructor Summary
Constructors Constructor Description MutableRegistry(RegistryKey<? extends Registry<T>> key, com.mojang.serialization.Lifecycle lifecycle)
-
Method Summary
Modifier and Type Method Description abstract <V extends T>
Vadd(RegistryKey<T> key, V entry, com.mojang.serialization.Lifecycle lifecycle)
abstract <V extends T>
Vreplace(OptionalInt rawId, RegistryKey<T> key, V newEntry, com.mojang.serialization.Lifecycle lifecycle)
If the given key is already present in the registry, replaces the entry associated with the given key with the new entry.abstract <V extends T>
Vset(int rawId, RegistryKey<T> key, V entry, com.mojang.serialization.Lifecycle lifecycle)
Methods inherited from class net.minecraft.util.registry.Registry
containsId, decode, encode, get, get, getEntries, getEntryLifecycle, getId, getIds, getKey, getKey, getLifecycle, getOrEmpty, getOrEmpty, getOrThrow, getRawId, keys, register, register, register, stream, toString, validate
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.mojang.serialization.Codec
comapFlatMap, deprecated, dispatch, dispatch, dispatchMap, dispatchMap, dispatchStable, fieldOf, flatComapMap, flatXmap, listOf, mapResult, optionalFieldOf, optionalFieldOf, optionalFieldOf, optionalFieldOf, orElse, orElse, orElse, orElseGet, orElseGet, orElseGet, partialDispatch, promotePartial, stable, withLifecycle, xmap
Methods inherited from interface com.mojang.serialization.Decoder
boxed, decode, flatMap, map, parse, parse, simple, terminal
Methods inherited from interface com.mojang.serialization.Encoder
comap, encodeStart, flatComap
Methods inherited from interface net.minecraft.util.collection.IndexedIterable
get
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
-
Constructor Details
-
MutableRegistry
public MutableRegistry(RegistryKey<? extends Registry<T>> key, com.mojang.serialization.Lifecycle lifecycle)
-
-
Method Details
-
set
public abstract <V extends T> V set(int rawId, RegistryKey<T> key, V entry, com.mojang.serialization.Lifecycle lifecycle) -
add
public abstract <V extends T> V add(RegistryKey<T> key, V entry, com.mojang.serialization.Lifecycle lifecycle) -
replace
public abstract <V extends T> V replace(OptionalInt rawId, RegistryKey<T> key, V newEntry, com.mojang.serialization.Lifecycle lifecycle)If the given key is already present in the registry, replaces the entry associated with the given key with the new entry. This method asserts that the raw ID is equal to the value already in the registry. The raw ID not being present may lead to buggy behavior.If the given key is not already present in the registry, adds the entry to the registry. If
rawId
is present, then this method gives the entry this raw ID. Otherwise, uses the next available ID.
-