package net.minecraft.world.level.levelgen.blockpredicates; import com.mojang.serialization.MapCodec; import com.mojang.serialization.codecs.RecordCodecBuilder; import com.mojang.serialization.codecs.RecordCodecBuilder.Instance; import java.util.List; import java.util.function.Function; abstract class CombiningPredicate implements BlockPredicate { protected final List predicates; protected CombiningPredicate(List p_190455_) { this.predicates = p_190455_; } public static MapCodec codec(Function, T> p_190459_) { return RecordCodecBuilder.mapCodec( p_190462_ -> p_190462_.group(BlockPredicate.CODEC.listOf().fieldOf("predicates").forGetter(p_190457_ -> p_190457_.predicates)) .apply(p_190462_, p_190459_) ); } }