Package net.minecraft.component
Interface ComponentHolder
- All Known Implementing Classes:
ItemStack
public interface ComponentHolder
An object that holds components. Note that this interface does not expose
methods to modify the held components.
Component holders usually have "base" components and the overrides to the base (usually referred to as "changes"). The overrides may set additional components, modify the values from the base-provided default, or "unset"/remove base values. Methods in this interface expose the final value, after applying the changes.
- See Also:
- Mappings:
Namespace Name named net/minecraft/component/ComponentHolderintermediary net/minecraft/class_9322official kl
-
Method Summary
Modifier and TypeMethodDescriptiondefault booleancontains(ComponentType<?> type) Returns whether the held components includetype.default <T> Tget(ComponentType<? extends T> type) Returns the value for the componenttype, ornullif the component is missing.default <T> TgetOrDefault(ComponentType<? extends T> type, T fallback) Returns the value for the componenttype, orfallbackif the component is missing.
-
Method Details
-
getComponents
ComponentMap getComponents()- Mappings:
Namespace Name Mixin selector named getComponentsLnet/minecraft/component/ComponentHolder;getComponents()Lnet/minecraft/component/ComponentMap;intermediary method_57353Lnet/minecraft/class_9322;method_57353()Lnet/minecraft/class_9323;official aLkl;a()Lkm;
-
get
Returns the value for the componenttype, ornullif the component is missing.The returned value should never be mutated.
- Returns:
- the value for the component
type, ornullif the component is missing - Mappings:
Namespace Name Mixin selector named getLnet/minecraft/component/ComponentHolder;get(Lnet/minecraft/component/ComponentType;)Ljava/lang/Object;intermediary method_57824Lnet/minecraft/class_9322;method_57824(Lnet/minecraft/class_9331;)Ljava/lang/Object;official aLkl;a(Lkp;)Ljava/lang/Object;
-
getOrDefault
Returns the value for the componenttype, orfallbackif the component is missing.This method does not initialize the components with
fallback. The returned value should never be mutated.- Returns:
- the value for the component
type, orfallbackif the component is missing - Mappings:
Namespace Name Mixin selector named getOrDefaultLnet/minecraft/component/ComponentHolder;getOrDefault(Lnet/minecraft/component/ComponentType;Ljava/lang/Object;)Ljava/lang/Object;intermediary method_57825Lnet/minecraft/class_9322;method_57825(Lnet/minecraft/class_9331;Ljava/lang/Object;)Ljava/lang/Object;official aLkl;a(Lkp;Ljava/lang/Object;)Ljava/lang/Object;
-
contains
Returns whether the held components includetype.- Returns:
- whether the held components include
type - Implementation Note:
- This is implemented as
get(type) != null. - Mappings:
Namespace Name Mixin selector named containsLnet/minecraft/component/ComponentHolder;contains(Lnet/minecraft/component/ComponentType;)Zintermediary method_57826Lnet/minecraft/class_9322;method_57826(Lnet/minecraft/class_9331;)Zofficial bLkl;b(Lkp;)Z
-