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.Field;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.util.Arrays; import java.util.Arrays;
import java.util.function.Function;
import java.util.function.Supplier; import java.util.function.Supplier;
import java.util.stream.Stream; import java.util.stream.Stream;
@ -205,11 +204,8 @@ public final class CraftBukkitReflection {
} }
} }
public static <T> T streamMethods( public static Stream<Method> streamMethods(final @NonNull Class<?> clazz) {
final @NonNull Class<?> clazz, return Arrays.stream(clazz.getDeclaredMethods());
final @NonNull Function<Stream<Method>, T> function
) {
return function.apply(Arrays.stream(clazz.getDeclaredMethods()));
} }
private CraftBukkitReflection() { 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, "create", TAG_CONTAINER_CLASS),
CraftBukkitReflection.findMethod(ARGUMENT_BLOCK_PREDICATE_RESULT_CLASS, "a", TAG_CONTAINER_CLASS) CraftBukkitReflection.findMethod(ARGUMENT_BLOCK_PREDICATE_RESULT_CLASS, "a", TAG_CONTAINER_CLASS)
); );
private static final Method GET_SERVER_METHOD = CraftBukkitReflection.streamMethods( private static final Method GET_SERVER_METHOD = CraftBukkitReflection.streamMethods(COMMAND_LISTENER_WRAPPER_CLASS)
COMMAND_LISTENER_WRAPPER_CLASS, .filter(it -> it.getReturnType().equals(MINECRAFT_SERVER_CLASS) && it.getParameterCount() == 0)
stream -> stream.filter(it -> it.getReturnType().equals(MINECRAFT_SERVER_CLASS) && it.getParameterCount() == 0) .findFirst()
.findFirst().orElseThrow(() -> new IllegalStateException("Could not find CommandSourceStack#getServer.")) .orElseThrow(() -> new IllegalStateException("Could not find CommandSourceStack#getServer."));
);
private static final Method GET_TAG_REGISTRY_METHOD = CraftBukkitReflection.firstNonNullOrThrow( private static final Method GET_TAG_REGISTRY_METHOD = CraftBukkitReflection.firstNonNullOrThrow(
() -> "getTags method on MinecraftServer", () -> "getTags method on MinecraftServer",
CraftBukkitReflection.findMethod(MINECRAFT_SERVER_CLASS, "getTagRegistry"), CraftBukkitReflection.findMethod(MINECRAFT_SERVER_CLASS, "getTagRegistry"),
CraftBukkitReflection.findMethod(MINECRAFT_SERVER_CLASS, "getTags"), CraftBukkitReflection.findMethod(MINECRAFT_SERVER_CLASS, "getTags"),
CraftBukkitReflection.streamMethods(MINECRAFT_SERVER_CLASS, stream -> CraftBukkitReflection.streamMethods(MINECRAFT_SERVER_CLASS)
stream.filter(it -> it.getReturnType().equals(TAG_CONTAINER_CLASS) && it.getParameterCount() == 0) .filter(it -> it.getReturnType().equals(TAG_CONTAINER_CLASS) && it.getParameterCount() == 0)
.findFirst().orElse(null)) .findFirst()
.orElse(null)
); );
private final ArgumentParser<C, BlockPredicate> parser; private final ArgumentParser<C, BlockPredicate> parser;