19 lines
		
	
	
	
		
			569 B
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			19 lines
		
	
	
	
		
			569 B
		
	
	
	
		
			Java
		
	
	
	
	
	
| package net.minecraft.core.component;
 | |
| 
 | |
| import org.jetbrains.annotations.Nullable;
 | |
| 
 | |
| public interface DataComponentGetter {
 | |
| 	@Nullable
 | |
| 	<T> T get(DataComponentType<? extends T> component);
 | |
| 
 | |
| 	default <T> T getOrDefault(DataComponentType<? extends T> component, T defaultValue) {
 | |
| 		T object = this.get(component);
 | |
| 		return object != null ? object : defaultValue;
 | |
| 	}
 | |
| 
 | |
| 	@Nullable
 | |
| 	default <T> TypedDataComponent<T> getTyped(DataComponentType<T> component) {
 | |
| 		T object = this.get(component);
 | |
| 		return object != null ? new TypedDataComponent<>(component, object) : null;
 | |
| 	}
 | |
| }
 |