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
         + "}";
   }
}