Interface IHolderSetExtension<T>
- All Known Subinterfaces:
HolderSet<T>
,ICustomHolderSet<T>
- All Known Implementing Classes:
AndHolderSet
,AnyHolderSet
,CompositeHolderSet
,HolderSet.Direct
,HolderSet.ListBacked
,HolderSet.Named
,NotHolderSet
,OrHolderSet
public interface IHolderSetExtension<T>
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic enum
What format a holderset serializes to in json/nbt/etc -
Method Summary
Modifier and TypeMethodDescriptiondefault void
addInvalidationListener
(Runnable runnable) Adds a callback to run when this holderset's contents invalidate (i.e.What format this holderset serializes to in json/nbt/etc
-
Method Details
-
addInvalidationListener
Adds a callback to run when this holderset's contents invalidate (i.e. because tags were rebound).
The intended usage and use case is with composite holdersets that need to cache sets/list based on other holdersets, which may be mutable (because they are tag-based or themselves composite holdersets). Composite holdersets should use this to add callbacks to each of their component holdersets when constructed.
- Parameters:
runnable
- Runnable to invoke when this component holderset's contents are no longer valid. This runnable should only clear caches and allow them to be lazily reevaluated later, as not all tag holdersets may have been rebound when this is called. This runnable should also invalidate all of the caller's listeners.
-
serializationType
What format this holderset serializes to in json/nbt/etc
-