From 9a74051cdb5929c90a0271eae1b9410ea30a3626 Mon Sep 17 00:00:00 2001 From: TheMode Date: Sun, 1 Aug 2021 14:00:57 +0200 Subject: [PATCH] Use jdk method for array comparison --- .../server/command/CommandManager.java | 2 +- .../net/minestom/server/utils/ArrayUtils.java | 22 ------------------- 2 files changed, 1 insertion(+), 23 deletions(-) diff --git a/src/main/java/net/minestom/server/command/CommandManager.java b/src/main/java/net/minestom/server/command/CommandManager.java index 3652ab296..c30df5db7 100644 --- a/src/main/java/net/minestom/server/command/CommandManager.java +++ b/src/main/java/net/minestom/server/command/CommandManager.java @@ -350,7 +350,7 @@ public final class CommandManager { for (var entry : syntaxesArguments.entrySet()) { final var parsedArguments = entry.getValue(); final int index = i + 1; - if (ArrayUtils.sameStart(arguments, parsedArguments, index)) { + if (Arrays.mismatch(arguments, 0, index, parsedArguments, 0, index) == -1) { final Argument sharedArgument = parsedArguments[i]; final var sharedSyntax = entry.getKey(); final var indexed = new IndexedArgument(sharedSyntax, sharedArgument, i); diff --git a/src/main/java/net/minestom/server/utils/ArrayUtils.java b/src/main/java/net/minestom/server/utils/ArrayUtils.java index e7c58e1c2..b690d5fdb 100644 --- a/src/main/java/net/minestom/server/utils/ArrayUtils.java +++ b/src/main/java/net/minestom/server/utils/ArrayUtils.java @@ -4,7 +4,6 @@ import it.unimi.dsi.fastutil.ints.IntList; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; -import java.util.Objects; import java.util.function.LongConsumer; @ApiStatus.Internal @@ -53,27 +52,6 @@ public final class ArrayUtils { return array; } - /** - * Gets if two arrays share the same start until {@code length}. - * - * @param first the first array - * @param second the second array - * @param length the length to check (0-length) - * @param the type of the arrays - * @return true if both arrays share the same start - */ - public static boolean sameStart(@NotNull T[] first, @NotNull T[] second, int length) { - if (Math.min(first.length, second.length) < length) { - return false; - } - for (int i = 0; i < length; i++) { - if (!Objects.equals(first[i], second[i])) { - return false; - } - } - return true; - } - public static boolean empty(byte[] array) { for (byte b : array) { if (b != 0) {