mirror of
https://github.com/Minestom/Minestom.git
synced 2025-03-02 11:21:15 +01:00
No need to return a new meta
Signed-off-by: TheMode <themode@outlook.fr>
This commit is contained in:
parent
3c0abb0409
commit
3f98bde82e
@ -88,15 +88,15 @@ public sealed interface ItemStack extends TagReadable, HoverEventSource<HoverEve
|
||||
<T extends ItemMetaView<?>> @NotNull T meta(@NotNull Class<T> metaClass);
|
||||
|
||||
@Contract(value = "_, -> new", pure = true)
|
||||
@NotNull ItemStack with(@NotNull Consumer<@NotNull Builder> builderConsumer);
|
||||
@NotNull ItemStack with(@NotNull Consumer<@NotNull Builder> consumer);
|
||||
|
||||
@Contract(value = "_, _ -> new", pure = true)
|
||||
@ApiStatus.Experimental
|
||||
<V extends ItemMetaView.Builder, T extends ItemMetaView<V>> @NotNull ItemStack withMeta(@NotNull Class<T> metaType,
|
||||
@NotNull Consumer<V> metaConsumer);
|
||||
@NotNull Consumer<V> consumer);
|
||||
|
||||
@Contract(value = "_ -> new", pure = true)
|
||||
@NotNull ItemStack withMeta(@NotNull UnaryOperator<ItemMeta.@NotNull Builder> metaOperator);
|
||||
@NotNull ItemStack withMeta(@NotNull Consumer<ItemMeta.@NotNull Builder> consumer);
|
||||
|
||||
@Contract(value = "_, -> new", pure = true)
|
||||
default @NotNull ItemStack withMaterial(@NotNull Material material) {
|
||||
@ -204,7 +204,8 @@ public sealed interface ItemStack extends TagReadable, HoverEventSource<HoverEve
|
||||
return meta();
|
||||
}
|
||||
|
||||
sealed interface Builder extends Taggable permits ItemStackImpl.Builder {
|
||||
sealed interface Builder extends Taggable
|
||||
permits ItemStackImpl.Builder {
|
||||
@Contract(value = "_ -> this")
|
||||
@NotNull Builder amount(int amount);
|
||||
|
||||
@ -218,10 +219,11 @@ public sealed interface ItemStack extends TagReadable, HoverEventSource<HoverEve
|
||||
@NotNull Builder meta(@NotNull ItemMeta itemMeta);
|
||||
|
||||
@Contract(value = "_ -> this")
|
||||
@NotNull Builder meta(@NotNull UnaryOperator<ItemMeta.@NotNull Builder> consumer);
|
||||
@NotNull Builder meta(@NotNull Consumer<ItemMeta.@NotNull Builder> consumer);
|
||||
|
||||
@Contract(value = "_, _ -> this")
|
||||
<V extends ItemMetaView.Builder, T extends ItemMetaView<V>> @NotNull Builder meta(@NotNull Class<T> metaType, @NotNull Consumer<@NotNull V> itemMetaConsumer);
|
||||
<V extends ItemMetaView.Builder, T extends ItemMetaView<V>> @NotNull Builder meta(@NotNull Class<T> metaType,
|
||||
@NotNull Consumer<@NotNull V> itemMetaConsumer);
|
||||
|
||||
@Contract(value = "-> new", pure = true)
|
||||
@NotNull ItemStack build();
|
||||
|
@ -11,7 +11,6 @@ import org.jglrxavpok.hephaistos.nbt.NBTString;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.UnaryOperator;
|
||||
|
||||
record ItemStackImpl(Material material, int amount, ItemMetaImpl meta) implements ItemStack {
|
||||
static final @NotNull StackingRule DEFAULT_STACKING_RULE;
|
||||
@ -45,21 +44,21 @@ record ItemStackImpl(Material material, int amount, ItemMetaImpl meta) implement
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull ItemStack with(@NotNull Consumer<ItemStack.@NotNull Builder> builderConsumer) {
|
||||
public @NotNull ItemStack with(@NotNull Consumer<ItemStack.@NotNull Builder> consumer) {
|
||||
ItemStack.Builder builder = builder();
|
||||
builderConsumer.accept(builder);
|
||||
consumer.accept(builder);
|
||||
return builder.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull <V extends ItemMetaView.Builder, T extends ItemMetaView<V>> ItemStack withMeta(@NotNull Class<T> metaType,
|
||||
@NotNull Consumer<V> metaConsumer) {
|
||||
return builder().meta(metaType, metaConsumer).build();
|
||||
@NotNull Consumer<V> consumer) {
|
||||
return builder().meta(metaType, consumer).build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull ItemStack withMeta(@NotNull UnaryOperator<ItemMeta.@NotNull Builder> metaOperator) {
|
||||
return builder().meta(metaOperator).build();
|
||||
public @NotNull ItemStack withMeta(@NotNull Consumer<ItemMeta.@NotNull Builder> consumer) {
|
||||
return builder().meta(consumer).build();
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -124,8 +123,8 @@ record ItemStackImpl(Material material, int amount, ItemMetaImpl meta) implement
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack.@NotNull Builder meta(@NotNull UnaryOperator<ItemMeta.Builder> consumer) {
|
||||
this.metaBuilder = (ItemMetaImpl.Builder) consumer.apply(metaBuilder);
|
||||
public ItemStack.@NotNull Builder meta(@NotNull Consumer<ItemMeta.Builder> consumer) {
|
||||
consumer.accept(metaBuilder);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user