๐ Make number argument suggestions respect minimum
This commit is contained in:
parent
78796255a2
commit
15526c95ed
1 changed files with 15 additions and 8 deletions
|
|
@ -192,20 +192,27 @@ public final class IntegerArgument<C> extends CommandArgument<C, Integer> {
|
||||||
static @NonNull List<@NonNull String> getSuggestions(final long min, final long max, final @NonNull String input) {
|
static @NonNull List<@NonNull String> getSuggestions(final long min, final long max, final @NonNull String input) {
|
||||||
if (input.isEmpty()) {
|
if (input.isEmpty()) {
|
||||||
return IntStream.range(0, MAX_SUGGESTIONS_INCREMENT).mapToObj(Integer::toString).collect(Collectors.toList());
|
return IntStream.range(0, MAX_SUGGESTIONS_INCREMENT).mapToObj(Integer::toString).collect(Collectors.toList());
|
||||||
|
} else if (input.equals("-")) {
|
||||||
|
return IntStream
|
||||||
|
.range((MAX_SUGGESTIONS_INCREMENT - 1) * -1, 0)
|
||||||
|
.mapToObj(Integer::toString)
|
||||||
|
.collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
final long inputNum = Long.parseLong(input);
|
final long inputNum = Long.parseLong(input);
|
||||||
if (inputNum > max) {
|
if (inputNum > max) {
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
} else {
|
|
||||||
final List<String> suggestions = new LinkedList<>();
|
|
||||||
suggestions.add(input); /* It's a valid number, so we suggest it */
|
|
||||||
for (int i = 0; i < MAX_SUGGESTIONS_INCREMENT
|
|
||||||
&& (inputNum * NUMBER_SHIFT_MULTIPLIER) + i <= max; i++) {
|
|
||||||
suggestions.add(Long.toString((inputNum * NUMBER_SHIFT_MULTIPLIER) + i));
|
|
||||||
}
|
|
||||||
return suggestions;
|
|
||||||
}
|
}
|
||||||
|
if (inputNum < min) {
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
final List<String> suggestions = new LinkedList<>();
|
||||||
|
suggestions.add(input); /* It's a valid number, so we suggest it */
|
||||||
|
for (int i = 0; i < MAX_SUGGESTIONS_INCREMENT
|
||||||
|
&& (inputNum * NUMBER_SHIFT_MULTIPLIER) + i <= max; i++) {
|
||||||
|
suggestions.add(Long.toString((inputNum * NUMBER_SHIFT_MULTIPLIER) + i));
|
||||||
|
}
|
||||||
|
return suggestions;
|
||||||
} catch (final Exception ignored) {
|
} catch (final Exception ignored) {
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loadingโฆ
Add table
Add a link
Reference in a new issue