-
Notifications
You must be signed in to change notification settings - Fork 393
/
ArgumentType.java
30 lines (23 loc) · 1020 Bytes
/
ArgumentType.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT license.
package com.mojang.brigadier.arguments;
import com.mojang.brigadier.StringReader;
import com.mojang.brigadier.context.CommandContext;
import com.mojang.brigadier.exceptions.CommandSyntaxException;
import com.mojang.brigadier.suggestion.Suggestions;
import com.mojang.brigadier.suggestion.SuggestionsBuilder;
import java.util.Collection;
import java.util.Collections;
import java.util.concurrent.CompletableFuture;
public interface ArgumentType<T> {
T parse(StringReader reader) throws CommandSyntaxException;
default <S> T parse(final StringReader reader, final S source) throws CommandSyntaxException {
return parse(reader);
}
default <S> CompletableFuture<Suggestions> listSuggestions(final CommandContext<S> context, final SuggestionsBuilder builder) {
return Suggestions.empty();
}
default Collection<String> getExamples() {
return Collections.emptyList();
}
}