Interface Buildable<R,​B extends Buildable.Builder<R>>

    • Method Detail

      • configureAndBuild

        @Contract(mutates="param1")
        @NotNull
        static <R extends Buildable<R,​B>,​B extends Buildable.Builder<R>> R configureAndBuild​(@NotNull
                                                                                                         B builder,
                                                                                                         @Nullable
                                                                                                         @Nullable Consumer<? super B> consumer)
        Configures builder using consumer and then builds.
        Type Parameters:
        R - the type to be built
        B - the builder type
        Parameters:
        builder - the builder
        consumer - the builder consume
        Returns:
        the built thing
        Since:
        4.0.0
      • toBuilder

        @Contract(value="-> new",
                  pure=true)
        @NotNull
        B toBuilder()
        Create a builder from this thing.
        Returns:
        a builder
        Since:
        4.0.0