ArgumentType class
Пакет: com.hypixel.hytale.server.core.command.system.arguments.types
Файл: com/hypixel/hytale/server/core/command/system/arguments/types/ArgumentType.java
implements: SuggestionProvider
Методы (8)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
throw new |
IllegalArgumentExceptionthrow new IllegalArgumentException("You cannot have less than 0 parameters for a argument type") |
abstract |
throw new |
UnsupportedOperationExceptionthrow new UnsupportedOperationException("This method has not yet been implemented in the subclass, please implement it or do not call it") |
public |
int |
getNumberOfParametersint getNumberOfParameters() |
public |
int |
getSuggestionValueCountint getSuggestionValueCount() |
|
|
if if(var3 < 0) |
public |
boolean |
isGreedyStringboolean isGreedyString() |
public |
boolean |
isListArgumentboolean isListArgument() |
public |
ArgumentType<DataType> |
withSharedSuggestionsArgumentType<DataType> withSharedSuggestions(@Nonnull ArgumentType<?> var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.command.system.arguments.types;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandSender;
class="kw">import com.hypixel.hytale.server.core.command.system.ParseResult;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.Argument;
class="kw">import com.hypixel.hytale.server.core.command.system.suggestion.SuggestionProvider;
class="kw">import com.hypixel.hytale.server.core.command.system.suggestion.SuggestionResult;
class="kw">import java.util.Arrays;
class="kw">import java.util.UUID;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class="kw">abstract class ArgumentType<DataType> class="kw">implements SuggestionProvider {
@Nonnull
class="kw">public class="kw">static class="kw">final String[] EMPTY_EXAMPLES = new String[0];
class="kw">private class="kw">final Message name;
@Nonnull
class="kw">private class="kw">final Message argumentUsage;
@Nonnull
class="kw">protected class="kw">final String[] examples;
class="kw">protected int numberOfParameters;
@Nonnull
class="kw">private String suggestionTypeId = UUID.randomUUID().toString();
class="kw">protected ArgumentType(@Nonnull Message var1, @Nonnull Message var2, int var3, @Nullable String... var4) {
this.name = var1;
this.argumentUsage = var2;
this.numberOfParameters = var3;
if (var3 < 0) {
throw new IllegalArgumentException("You cannot have less than 0 parameters for a argument type");
}
this.examples = var4 == null ? EMPTY_EXAMPLES : var4;
}
class="kw">protected ArgumentType(@Nonnull String var1, @Nonnull Message var2, int var3, @Nullable String... var4) {
this(Message.translation(var1), var2, var3, var4);
}
class="kw">protected ArgumentType(String var1, @Nonnull String var2, int var3, @Nullable String... var4) {
this(Message.translation(var1), Message.translation(var2), var3, var4);
}
@Nullable
class="kw">public DataType processedGet(CommandSender var1, CommandContext var2, Argument<?, DataType> var3) {
throw new UnsupportedOperationException("This method has not yet been implemented in the subclass, please implement it or do not call it");
}
@Override
class="kw">public void suggest(@Nonnull CommandSender var1, @Nonnull String var2, int var3, @Nonnull SuggestionResult var4) {
}
@Nullable
class="kw">public class="kw">abstract DataType parse(@Nonnull String[] var1, @Nonnull ParseResult var2);
@Nonnull
class="kw">public Message getArgumentUsage() {
class="kw">return this.argumentUsage;
}
class="kw">public int getNumberOfParameters() {
class="kw">return this.numberOfParameters;
}
@Nonnull
class="kw">public Message getName() {
class="kw">return this.name;
}
@Nonnull
class="kw">public String[] getExamples() {
class="kw">return this.examples;
}
class="kw">public boolean isListArgument() {
class="kw">return false;
}
class="kw">public boolean isGreedyString() {
class="kw">return false;
}
@Nonnull
class="kw">public class="kw">final String getSuggestionTypeId() {
class="kw">return this.suggestionTypeId;
}
class="kw">public ArgumentType<DataType> withSharedSuggestions(@Nonnull ArgumentType<?> var1) {
this.suggestionTypeId = var1.getSuggestionTypeId();
class="kw">return this;
}
class="kw">public int getSuggestionValueCount() {
class="kw">return -1;
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "ArgumentType{name='"
+ this.name
+ "', argumentUsage="
+ this.argumentUsage
+ ", examples="
+ Arrays.toString(this.examples)
+ ", numberOfParameters="
+ this.numberOfParameters
+ "}";
}
}