Remove redundant Function

This commit is contained in:
Jason Penilla 2021-11-25 14:39:37 -08:00 committed by Jason
parent c473e9674a
commit a22d9e0100
2 changed files with 12 additions and 16 deletions

View file

@ -32,7 +32,6 @@ import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.Arrays;
import java.util.function.Function;
import java.util.function.Supplier;
import java.util.stream.Stream;
@ -205,11 +204,8 @@ public final class CraftBukkitReflection {
}
}
public static <T> T streamMethods(
final @NonNull Class<?> clazz,
final @NonNull Function<Stream<Method>, T> function
) {
return function.apply(Arrays.stream(clazz.getDeclaredMethods()));
public static Stream<Method> streamMethods(final @NonNull Class<?> clazz) {
return Arrays.stream(clazz.getDeclaredMethods());
}
private CraftBukkitReflection() {

View file

@ -203,18 +203,18 @@ public final class BlockPredicateArgument<C> extends CommandArgument<C, BlockPre
CraftBukkitReflection.findMethod(ARGUMENT_BLOCK_PREDICATE_RESULT_CLASS, "create", TAG_CONTAINER_CLASS),
CraftBukkitReflection.findMethod(ARGUMENT_BLOCK_PREDICATE_RESULT_CLASS, "a", TAG_CONTAINER_CLASS)
);
private static final Method GET_SERVER_METHOD = CraftBukkitReflection.streamMethods(
COMMAND_LISTENER_WRAPPER_CLASS,
stream -> stream.filter(it -> it.getReturnType().equals(MINECRAFT_SERVER_CLASS) && it.getParameterCount() == 0)
.findFirst().orElseThrow(() -> new IllegalStateException("Could not find CommandSourceStack#getServer."))
);
private static final Method GET_SERVER_METHOD = CraftBukkitReflection.streamMethods(COMMAND_LISTENER_WRAPPER_CLASS)
.filter(it -> it.getReturnType().equals(MINECRAFT_SERVER_CLASS) && it.getParameterCount() == 0)
.findFirst()
.orElseThrow(() -> new IllegalStateException("Could not find CommandSourceStack#getServer."));
private static final Method GET_TAG_REGISTRY_METHOD = CraftBukkitReflection.firstNonNullOrThrow(
() -> "getTags method on MinecraftServer",
CraftBukkitReflection.findMethod(MINECRAFT_SERVER_CLASS, "getTagRegistry"),
CraftBukkitReflection.findMethod(MINECRAFT_SERVER_CLASS, "getTags"),
CraftBukkitReflection.streamMethods(MINECRAFT_SERVER_CLASS, stream ->
stream.filter(it -> it.getReturnType().equals(TAG_CONTAINER_CLASS) && it.getParameterCount() == 0)
.findFirst().orElse(null))
CraftBukkitReflection.streamMethods(MINECRAFT_SERVER_CLASS)
.filter(it -> it.getReturnType().equals(TAG_CONTAINER_CLASS) && it.getParameterCount() == 0)
.findFirst()
.orElse(null)
);
private final ArgumentParser<C, BlockPredicate> parser;