Package net.minecraft.util.registry
Class SimpleRegistry<T>
- java.lang.Object
-
- net.minecraft.util.registry.Registry<T>
-
- net.minecraft.util.registry.MutableRegistry<T>
-
- net.minecraft.util.registry.SimpleRegistry<T>
-
- All Implemented Interfaces:
com.mojang.serialization.Codec<T>,com.mojang.serialization.Decoder<T>,com.mojang.serialization.Encoder<T>,com.mojang.serialization.Keyable,java.lang.Iterable<T>,IObjectIntIterable<T>
- Direct Known Subclasses:
DefaultedRegistry,NamespacedWrapper
public class SimpleRegistry<T> extends MutableRegistry<T>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSimpleRegistry.Entry<T>
-
Field Summary
Fields Modifier and Type Field Description private it.unimi.dsi.fastutil.objects.ObjectList<T>byIdprivate com.mojang.serialization.LifecycleelementsLifecycleprivate com.google.common.collect.BiMap<RegistryKey<T>,T>keyStorageprivate java.util.Map<T,com.mojang.serialization.Lifecycle>lifecyclesprotected static org.apache.logging.log4j.LoggerLOGGERprivate intnextIdprotected java.lang.Object[]randomCacheprivate com.google.common.collect.BiMap<ResourceLocation,T>storageprivate it.unimi.dsi.fastutil.objects.Object2IntMap<T>toId-
Fields inherited from class net.minecraft.util.registry.Registry
ACTIVITY, ACTIVITY_REGISTRY, ATTRIBUTE, ATTRIBUTE_REGISTRY, BIOME_REGISTRY, BIOME_SOURCE, BIOME_SOURCE_REGISTRY, BLOCK, BLOCK_ENTITY_TYPE, BLOCK_ENTITY_TYPE_REGISTRY, BLOCK_PLACER_TYPE_REGISTRY, BLOCK_PLACER_TYPES, BLOCK_REGISTRY, BLOCK_STATE_PROVIDER_TYPE_REGISTRY, BLOCKSTATE_PROVIDER_TYPES, CARVER, CARVER_REGISTRY, CHUNK_GENERATOR, CHUNK_GENERATOR_REGISTRY, CHUNK_STATUS, CHUNK_STATUS_REGISTRY, CONFIGURED_CARVER_REGISTRY, CONFIGURED_FEATURE_REGISTRY, CONFIGURED_STRUCTURE_FEATURE_REGISTRY, CONFIGURED_SURFACE_BUILDER_REGISTRY, CUSTOM_STAT, CUSTOM_STAT_REGISTRY, DECORATOR, DECORATOR_REGISTRY, DIMENSION_REGISTRY, DIMENSION_TYPE_REGISTRY, ENCHANTMENT, ENCHANTMENT_REGISTRY, ENTITY_TYPE, ENTITY_TYPE_REGISTRY, FEATURE, FEATURE_REGISTRY, FEATURE_SIZE_TYPE_REGISTRY, FEATURE_SIZE_TYPES, FLUID, FLUID_REGISTRY, FOLIAGE_PLACER_TYPE_REGISTRY, FOLIAGE_PLACER_TYPES, ITEM, ITEM_REGISTRY, LEVEL_STEM_REGISTRY, LOOT_CONDITION_TYPE, LOOT_ENTRY_REGISTRY, LOOT_FUNCTION_REGISTRY, LOOT_FUNCTION_TYPE, LOOT_ITEM_REGISTRY, LOOT_POOL_ENTRY_TYPE, MEMORY_MODULE_TYPE, MEMORY_MODULE_TYPE_REGISTRY, MENU, MENU_REGISTRY, MOB_EFFECT, MOB_EFFECT_REGISTRY, MOTIVE, MOTIVE_REGISTRY, NOISE_GENERATOR_SETTINGS_REGISTRY, PARTICLE_TYPE, PARTICLE_TYPE_REGISTRY, POINT_OF_INTEREST_TYPE, POINT_OF_INTEREST_TYPE_REGISTRY, POS_RULE_TEST, POS_RULE_TEST_REGISTRY, POTION, POTION_REGISTRY, PROCESSOR_LIST_REGISTRY, RECIPE_SERIALIZER, RECIPE_SERIALIZER_REGISTRY, RECIPE_TYPE, RECIPE_TYPE_REGISTRY, REGISTRY, ROOT_REGISTRY_NAME, RULE_TEST, RULE_TEST_REGISTRY, SCHEDULE, SCHEDULE_REGISTRY, SENSOR_TYPE, SENSOR_TYPE_REGISTRY, SOUND_EVENT, SOUND_EVENT_REGISTRY, STAT_TYPE, STAT_TYPE_REGISTRY, STRUCTURE_FEATURE, STRUCTURE_FEATURE_REGISTRY, STRUCTURE_PIECE, STRUCTURE_PIECE_REGISTRY, STRUCTURE_POOL_ELEMENT, STRUCTURE_POOL_ELEMENT_REGISTRY, STRUCTURE_PROCESSOR, STRUCTURE_PROCESSOR_REGISTRY, SURFACE_BUILDER, SURFACE_BUILDER_REGISTRY, TEMPLATE_POOL_REGISTRY, TREE_DECORATOR_TYPE_REGISTRY, TREE_DECORATOR_TYPES, TRUNK_PLACER_TYPE_REGISTRY, TRUNK_PLACER_TYPES, VILLAGER_PROFESSION, VILLAGER_PROFESSION_REGISTRY, VILLAGER_TYPE, VILLAGER_TYPE_REGISTRY, WRITABLE_REGISTRY
-
-
Constructor Summary
Constructors Constructor Description SimpleRegistry(RegistryKey<? extends Registry<T>> p_i232509_1_, com.mojang.serialization.Lifecycle p_i232509_2_)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description TbyId(int p_148745_1_)booleancontainsKey(ResourceLocation p_212607_1_)static <T> com.mojang.serialization.Codec<SimpleRegistry<T>>dataPackCodec(RegistryKey<? extends Registry<T>> p_241744_0_, com.mojang.serialization.Lifecycle p_241744_1_, com.mojang.serialization.Codec<T> p_241744_2_)static <T> com.mojang.serialization.Codec<SimpleRegistry<T>>directCodec(RegistryKey<? extends Registry<T>> p_241745_0_, com.mojang.serialization.Lifecycle p_241745_1_, com.mojang.serialization.Codec<T> p_241745_2_)com.mojang.serialization.LifecycleelementsLifecycle()java.util.Set<java.util.Map.Entry<RegistryKey<T>,T>>entrySet()Tget(RegistryKey<T> p_230516_1_)Tget(ResourceLocation p_82594_1_)intgetId(T p_148757_1_)ResourceLocationgetKey(T p_177774_1_)TgetRandom(java.util.Random p_186801_1_)java.util.Optional<RegistryKey<T>>getResourceKey(T p_230519_1_)java.util.Iterator<T>iterator()java.util.Set<ResourceLocation>keySet()com.mojang.serialization.Lifecyclelifecycle(T p_241876_1_)static <T> com.mojang.serialization.Codec<SimpleRegistry<T>>networkCodec(RegistryKey<? extends Registry<T>> p_243539_0_, com.mojang.serialization.Lifecycle p_243539_1_, com.mojang.serialization.Codec<T> p_243539_2_)<V extends T>
Vregister(RegistryKey<T> p_218381_1_, V p_218381_2_, com.mojang.serialization.Lifecycle p_218381_3_)<V extends T>
VregisterMapping(int p_218382_1_, RegistryKey<T> p_218382_2_, V p_218382_3_, com.mojang.serialization.Lifecycle p_218382_4_)private <V extends T>
VregisterMapping(int p_243537_1_, RegistryKey<T> p_243537_2_, V p_243537_3_, com.mojang.serialization.Lifecycle p_243537_4_, boolean p_243537_5_)<V extends T>
VregisterOrOverride(java.util.OptionalInt p_241874_1_, RegistryKey<T> p_241874_2_, V p_241874_3_, com.mojang.serialization.Lifecycle p_241874_4_)static <T> com.mojang.serialization.MapCodec<SimpleRegistry.Entry<T>>withNameAndId(RegistryKey<? extends Registry<T>> p_243541_0_, com.mojang.serialization.MapCodec<T> p_243541_1_)-
Methods inherited from class net.minecraft.util.registry.Registry
checkRegistry, decode, encode, getOptional, getOptional, getOrThrow, key, keys, register, register, registerMapping, stream, toString
-
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
-
-
-
-
Field Detail
-
LOGGER
protected static final org.apache.logging.log4j.Logger LOGGER
-
byId
private final it.unimi.dsi.fastutil.objects.ObjectList<T> byId
-
toId
private final it.unimi.dsi.fastutil.objects.Object2IntMap<T> toId
-
storage
private final com.google.common.collect.BiMap<ResourceLocation,T> storage
-
keyStorage
private final com.google.common.collect.BiMap<RegistryKey<T>,T> keyStorage
-
lifecycles
private final java.util.Map<T,com.mojang.serialization.Lifecycle> lifecycles
-
elementsLifecycle
private com.mojang.serialization.Lifecycle elementsLifecycle
-
randomCache
protected java.lang.Object[] randomCache
-
nextId
private int nextId
-
-
Constructor Detail
-
SimpleRegistry
public SimpleRegistry(RegistryKey<? extends Registry<T>> p_i232509_1_, com.mojang.serialization.Lifecycle p_i232509_2_)
-
-
Method Detail
-
withNameAndId
public static <T> com.mojang.serialization.MapCodec<SimpleRegistry.Entry<T>> withNameAndId(RegistryKey<? extends Registry<T>> p_243541_0_, com.mojang.serialization.MapCodec<T> p_243541_1_)
-
registerMapping
public <V extends T> V registerMapping(int p_218382_1_, RegistryKey<T> p_218382_2_, V p_218382_3_, com.mojang.serialization.Lifecycle p_218382_4_)
- Specified by:
registerMappingin classMutableRegistry<T>
-
registerMapping
private <V extends T> V registerMapping(int p_243537_1_, RegistryKey<T> p_243537_2_, V p_243537_3_, com.mojang.serialization.Lifecycle p_243537_4_, boolean p_243537_5_)
-
register
public <V extends T> V register(RegistryKey<T> p_218381_1_, V p_218381_2_, com.mojang.serialization.Lifecycle p_218381_3_)
- Specified by:
registerin classMutableRegistry<T>
-
registerOrOverride
public <V extends T> V registerOrOverride(java.util.OptionalInt p_241874_1_, RegistryKey<T> p_241874_2_, V p_241874_3_, com.mojang.serialization.Lifecycle p_241874_4_)
- Specified by:
registerOrOverridein classMutableRegistry<T>
-
getKey
@Nullable public ResourceLocation getKey(T p_177774_1_)
-
getResourceKey
public java.util.Optional<RegistryKey<T>> getResourceKey(T p_230519_1_)
- Specified by:
getResourceKeyin classRegistry<T>
-
getId
public int getId(@Nullable T p_148757_1_)
-
get
@Nullable public T get(@Nullable RegistryKey<T> p_230516_1_)
-
byId
@Nullable public T byId(int p_148745_1_)
-
lifecycle
public com.mojang.serialization.Lifecycle lifecycle(T p_241876_1_)
-
elementsLifecycle
public com.mojang.serialization.Lifecycle elementsLifecycle()
- Specified by:
elementsLifecyclein classRegistry<T>
-
iterator
public java.util.Iterator<T> iterator()
-
get
@Nullable public T get(@Nullable ResourceLocation p_82594_1_)
-
keySet
public java.util.Set<ResourceLocation> keySet()
-
entrySet
public java.util.Set<java.util.Map.Entry<RegistryKey<T>,T>> entrySet()
-
getRandom
@Nullable public T getRandom(java.util.Random p_186801_1_)
-
containsKey
public boolean containsKey(ResourceLocation p_212607_1_)
- Specified by:
containsKeyin classRegistry<T>
-
networkCodec
public static <T> com.mojang.serialization.Codec<SimpleRegistry<T>> networkCodec(RegistryKey<? extends Registry<T>> p_243539_0_, com.mojang.serialization.Lifecycle p_243539_1_, com.mojang.serialization.Codec<T> p_243539_2_)
-
dataPackCodec
public static <T> com.mojang.serialization.Codec<SimpleRegistry<T>> dataPackCodec(RegistryKey<? extends Registry<T>> p_241744_0_, com.mojang.serialization.Lifecycle p_241744_1_, com.mojang.serialization.Codec<T> p_241744_2_)
-
directCodec
public static <T> com.mojang.serialization.Codec<SimpleRegistry<T>> directCodec(RegistryKey<? extends Registry<T>> p_241745_0_, com.mojang.serialization.Lifecycle p_241745_1_, com.mojang.serialization.Codec<T> p_241745_2_)
-
-