Package kr.toxicity.model.api.util
Class FunctionUtil
java.lang.Object
kr.toxicity.model.api.util.FunctionUtil
Function util
-
Method Summary
Modifier and TypeMethodDescriptionstatic <T> @NotNull Supplier<T> asSupplier(T t) Makes constant value as supplier.static <T> TTakes value if predicate is matchedstatic <T,R> @NotNull Function <T, R> throttleTick(long tick, @NotNull Function<T, R> function) Throttles this function by tickstatic <T> @NotNull Supplier<T> throttleTick(long tick, @NotNull Supplier<T> supplier) Throttles this function by tickstatic <T,R> @NotNull Function <T, R> throttleTick(@NotNull Function<T, R> function) Throttles this function by tickstatic <T> @NotNull Predicate<T> throttleTick(@NotNull Predicate<T> predicate) Throttles this function by tickstatic <T> @NotNull Supplier<T> throttleTick(@NotNull Supplier<T> supplier) Throttles this function by tickstatic @NotNull BooleanSupplierthrottleTickBoolean(@NotNull BooleanSupplier supplier) Throttles this function by tickstatic @NotNull FloatSupplierthrottleTickFloat(long tick, @NotNull FloatSupplier supplier) Throttles this function by tickstatic @NotNull FloatSupplierthrottleTickFloat(@NotNull FloatSupplier supplier) Throttles this function by tick
-
Method Details
-
asSupplier
Makes constant value as supplier.- Type Parameters:
T- supplier- Parameters:
t- value- Returns:
- supplier that returns always the same object.
-
takeIf
Takes value if predicate is matched- Type Parameters:
T- type- Parameters:
t- tpredicate- predicate- Returns:
- t or null
-
throttleTick
@NotNull public static <T> @NotNull Supplier<T> throttleTick(@NotNull @NotNull Supplier<T> supplier) Throttles this function by tick- Type Parameters:
T- type- Parameters:
supplier- target- Returns:
- throttled function
-
throttleTick
@NotNull public static <T> @NotNull Supplier<T> throttleTick(long tick, @NotNull @NotNull Supplier<T> supplier) Throttles this function by tick- Type Parameters:
T- type- Parameters:
tick- ticksupplier- target- Returns:
- throttled function
-
throttleTickFloat
@NotNull public static @NotNull FloatSupplier throttleTickFloat(@NotNull @NotNull FloatSupplier supplier) Throttles this function by tick- Parameters:
supplier- target- Returns:
- throttled function
-
throttleTickFloat
@NotNull public static @NotNull FloatSupplier throttleTickFloat(long tick, @NotNull @NotNull FloatSupplier supplier) Throttles this function by tick- Parameters:
tick- ticksupplier- target- Returns:
- throttled function
-
throttleTickBoolean
@NotNull public static @NotNull BooleanSupplier throttleTickBoolean(@NotNull @NotNull BooleanSupplier supplier) Throttles this function by tick- Parameters:
supplier- target- Returns:
- throttled function
-
throttleTick
@NotNull public static <T> @NotNull Predicate<T> throttleTick(@NotNull @NotNull Predicate<T> predicate) Throttles this function by tick- Type Parameters:
T- type- Parameters:
predicate- target- Returns:
- throttled function
-
throttleTick
@NotNull public static <T,R> @NotNull Function<T,R> throttleTick(@NotNull @NotNull Function<T, R> function) Throttles this function by tick- Type Parameters:
T- fromR- return- Parameters:
function- target- Returns:
- throttled function
-
throttleTick
@NotNull public static <T,R> @NotNull Function<T,R> throttleTick(long tick, @NotNull @NotNull Function<T, R> function) Throttles this function by tick- Type Parameters:
T- fromR- return- Parameters:
tick- tickfunction- target- Returns:
- throttled function
-