Package net.kyori.adventure.util
Interface Buildable<R,B extends Buildable.Builder<R>>
- Type Parameters:
R
- the type that can be builtB
- the builder type
- All Known Subinterfaces:
BlockNBTComponent
,Book
,BuildableComponent<C,B>
,EntityNBTComponent
,KeybindComponent
,NBTComponent<C,B>
,ScoreComponent
,SelectorComponent
,StorageNBTComponent
,Style
,TextComponent
,TextReplacementConfig
,TranslatableComponent
public interface Buildable<R,B extends Buildable.Builder<R>>
Something that can be built.
- Since:
- 4.0.0
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
Buildable.Builder<R>
A builder. -
Method Summary
Modifier and Type Method Description static <R extends Buildable<R, B>, B extends Buildable.Builder<R>>
@NonNull RconfigureAndBuild(@NonNull B builder, @Nullable Consumer<? super B> consumer)
Configuresbuilder
usingconsumer
and then builds.@NonNull B
toBuilder()
Create a builder from this thing.
-
Method Details
-
configureAndBuild
@Contract(mutates="param1") static <R extends Buildable<R, B>, B extends Buildable.Builder<R>> @NonNull R configureAndBuild(@NonNull B builder, @Nullable Consumer<? super B> consumer)Configuresbuilder
usingconsumer
and then builds.- Type Parameters:
R
- the type to be builtB
- the builder type- Parameters:
builder
- the builderconsumer
- the builder consume- Returns:
- the built thing
- Since:
- 4.0.0
-
toBuilder
Create a builder from this thing.- Returns:
- a builder
- Since:
- 4.0.0
-