Schnittstelle Registry<K,V>

Typparameter:
K - Key Type.
V - Value Type.
Alle bekannten Implementierungsklassen:
GenericRegistry

public interface Registry<K,V>
Generic registry interface for key-value storage with freeze support.
  • Methodenübersicht

    Modifikator und Typ
    Methode
    Beschreibung
    void
    Clear the registry (only if not frozen).
    boolean
    contains(K key)
    Check if the registry contains a key.
    void
    forEach(BiConsumer<K,V> kvConsumer)
    Iterate over all key-value pairs.
    void
    forEach(Consumer<V> action)
    Iterate over all values.
    void
    Freeze the registry, making it immutable.
    get(K key)
    Get the value directly (legacy method, prefer getRef()).
    getKey(V value)
    Get the key for a given value (reverse lookup).
    getRandom(net.minecraft.util.RandomSource random)
    Get a random value from the registry.
    getRef(K key)
    Get a reference to the registry entry.
    boolean
    Check if the registry is empty.
    boolean
    Check if the registry is frozen (immutable).
    Get all keys in the registry.
    boolean
    onFreeze(Runnable callback)
    Register a callback to run when the registry is frozen.
    void
    register(K key, V value)
    Register a key-value pair in this registry.
    void
    remove(K key)
    Remove a key from this registry.
    int
    Get the number of entries in the registry.
    Stream all values.
    tryGet(K key)
    Try to get a value, returning Optional.
    void
    Unfreeze the registry, allowing modifications again.
    Get all values in the registry.
  • Methodendetails

    • register

      void register(K key, V value)
      Register a key-value pair in this registry.
    • remove

      void remove(K key)
      Remove a key from this registry.
    • get

      V get(K key)
      Get the value directly (legacy method, prefer getRef()). Returns null or default value if not found.
    • getRef

      RegistryRef<K,V> getRef(K key)
      Get a reference to the registry entry. This is the preferred way to access registry entries.
      Gibt zurück:
      RegistryRef that can be cached and provides lazy loading
    • getKey

      K getKey(V value)
      Get the key for a given value (reverse lookup).
    • getRandom

      V getRandom(net.minecraft.util.RandomSource random)
      Get a random value from the registry.
    • tryGet

      Optional<V> tryGet(K key)
      Try to get a value, returning Optional.
    • contains

      boolean contains(K key)
      Check if the registry contains a key.
    • values

      Collection<V> values()
      Get all values in the registry.
    • keys

      Collection<K> keys()
      Get all keys in the registry.
    • isFrozen

      boolean isFrozen()
      Check if the registry is frozen (immutable).
    • isEmpty

      boolean isEmpty()
      Check if the registry is empty.
    • freeze

      void freeze()
      Freeze the registry, making it immutable.
    • unfreeze

      void unfreeze()
      Unfreeze the registry, allowing modifications again.
    • onFreeze

      boolean onFreeze(Runnable callback)
      Register a callback to run when the registry is frozen.
      Gibt zurück:
      true if callback was added, false if already frozen (callback ran immediately)
    • forEach

      void forEach(BiConsumer<K,V> kvConsumer)
      Iterate over all key-value pairs.
    • forEach

      void forEach(Consumer<V> action)
      Iterate over all values.
    • stream

      Stream<V> stream()
      Stream all values.
    • clear

      void clear() throws IllegalStateException
      Clear the registry (only if not frozen).
      Löst aus:
      IllegalStateException
    • size

      int size()
      Get the number of entries in the registry.