Token enum

Пакет: com.hypixel.hytale.server.npc.util.expression.compile

Файл: com/hypixel/hytale/server/npc/util/expression/compile/Token.java

implements: Supplier<String>

Поля (1)

МодификаторыТипИмя
final String text

Методы (15)

МодификаторыВозвратСигнатура
public boolean canBeUnaryboolean canBeUnary()
public boolean containsAnyFlagboolean containsAnyFlag(@Nonnull EnumSet<TokenFlags> var1)
public String getString get()
public EnumSet<TokenFlags> getFlagsEnumSet<TokenFlags> getFlags()
public int getPrecedenceint getPrecedence()
public boolean isCloseBracketboolean isCloseBracket()
public boolean isEndTokenboolean isEndToken()
public boolean isListboolean isList()
public boolean isLiteralboolean isLiteral()
public boolean isOpenBracketboolean isOpenBracket()
public boolean isOpenTupleboolean isOpenTuple()
public boolean isOperandboolean isOperand()
public boolean isOperatorboolean isOperator()
public boolean isRightToLeftboolean isRightToLeft()
public boolean isUnaryboolean isUnary()

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.util.expression.compile;

class="kw">import java.util.Collections;
class="kw">import java.util.EnumSet;
class="kw">import java.util.function.Supplier;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public enum Token class="kw">implements Supplier<String> {
   INVALID(null, 0),
   END(null, 0),
   STRING(null, 0, EnumSet.of(TokenFlags.OPERAND, TokenFlags.LITERAL)),
   NUMBER(null, 0, EnumSet.of(TokenFlags.OPERAND, TokenFlags.LITERAL)),
   IDENTIFIER(null, 0, EnumSet.of(TokenFlags.OPERAND)),
   OPEN_BRACKET("(", 20, EnumSet.of(TokenFlags.OPENING_BRACKET), null, null),
   CLOSE_BRACKET(")", 20, EnumSet.of(TokenFlags.CLOSING_BRACKET), OPEN_BRACKET, null),
   OPEN_SQUARE_BRACKET("[", 19, EnumSet.of(TokenFlags.OPENING_BRACKET, TokenFlags.OPENING_TUPLE), null, null),
   CLOSE_SQUARE_BRACKET("]", 19, EnumSet.of(TokenFlags.CLOSING_BRACKET), OPEN_SQUARE_BRACKET, null),
   COMMA(",", 20, EnumSet.of(TokenFlags.LIST)),
   FUNCTION_CALL(null, 19),
   UNARY_MINUS(null, 16, EnumSet.of(TokenFlags.OPERATOR, TokenFlags.RIGHT_TO_LEFT, TokenFlags.UNARY)),
   UNARY_PLUS(null, 16, EnumSet.of(TokenFlags.OPERATOR, TokenFlags.RIGHT_TO_LEFT, TokenFlags.UNARY)),
   LOGICAL_NOT("!", 16, EnumSet.of(TokenFlags.OPERATOR, TokenFlags.RIGHT_TO_LEFT, TokenFlags.UNARY)),
   BITWISE_NOT("~", 16, EnumSet.of(TokenFlags.OPERATOR, TokenFlags.RIGHT_TO_LEFT, TokenFlags.UNARY)),
   EXPONENTIATION("**", 15, EnumSet.of(TokenFlags.OPERATOR, TokenFlags.RIGHT_TO_LEFT)),
   REMAINDER("%", 14, EnumSet.of(TokenFlags.OPERATOR)),
   DIVIDE("/", 14, EnumSet.of(TokenFlags.OPERATOR)),
   MULTIPLY("*", 14, EnumSet.of(TokenFlags.OPERATOR)),
   MINUS("-", 13, EnumSet.of(TokenFlags.OPERATOR), null, UNARY_MINUS),
   PLUS("+", 13, EnumSet.of(TokenFlags.OPERATOR), null, UNARY_PLUS),
   GREATER_EQUAL(">=", 11, EnumSet.of(TokenFlags.OPERATOR)),
   GREATER(">", 11, EnumSet.of(TokenFlags.OPERATOR)),
   LESS_EQUAL("<=", 11, EnumSet.of(TokenFlags.OPERATOR)),
   LESS("<", 11, EnumSet.of(TokenFlags.OPERATOR)),
   NOT_EQUAL("!=", 10, EnumSet.of(TokenFlags.OPERATOR)),
   EQUAL("==", 10, EnumSet.of(TokenFlags.OPERATOR)),
   BITWISE_AND("&", 9, EnumSet.of(TokenFlags.OPERATOR)),
   BITWISE_XOR("^", 8, EnumSet.of(TokenFlags.OPERATOR)),
   BITWISE_OR("|", 7, EnumSet.of(TokenFlags.OPERATOR)),
   LOGICAL_AND("&&", 6, EnumSet.of(TokenFlags.OPERATOR)),
   LOGICAL_OR("||", 5, EnumSet.of(TokenFlags.OPERATOR));

   class="kw">private class="kw">final String text;
   class="kw">private class="kw">final int precedence;
   class="kw">private class="kw">final EnumSet<TokenFlags> flags;
   @Nullable
   class="kw">private class="kw">final Token matchingBracket;
   @Nullable
   class="kw">private class="kw">final Token unaryVariant;

   Token(String nullxx, int nullxxx) {
      this.text = nullxx;
      this.precedence = nullxxx;
      this.flags = EnumSet.noneOf(TokenFlags.class);
      this.matchingBracket = null;
      this.unaryVariant = null;
   }

   Token(String nullxx, int nullxxx, EnumSet<TokenFlags> nullxxxx) {
      this.text = nullxx;
      this.precedence = nullxxx;
      this.flags = nullxxxx;
      this.matchingBracket = null;
      this.unaryVariant = null;
   }

   Token(String nullxx, int nullxxx, EnumSet<TokenFlags> nullxxxx, Token nullxxxxx, Token nullxxxxxx) {
      this.text = nullxx;
      this.precedence = nullxxx;
      this.flags = nullxxxx;
      this.matchingBracket = nullxxxxx;
      this.unaryVariant = nullxxxxxx;
   }

   class="kw">public String get() {
      class="kw">return this.text;
   }

   class="kw">public int getPrecedence() {
      class="kw">return this.precedence;
   }

   class="kw">public EnumSet<TokenFlags> getFlags() {
      class="kw">return this.flags;
   }

   class="kw">public boolean containsAnyFlag(@Nonnull EnumSet<TokenFlags> var1) {
      class="kw">return !Collections.disjoint(this.flags, var1);
   }

   class="kw">public boolean isEndToken() {
      class="kw">return this == END;
   }

   class="kw">public boolean isOperand() {
      class="kw">return this.flags.contains(TokenFlags.OPERAND);
   }

   class="kw">public boolean isLiteral() {
      class="kw">return this.flags.contains(TokenFlags.LITERAL);
   }

   class="kw">public boolean isOperator() {
      class="kw">return this.flags.contains(TokenFlags.OPERATOR);
   }

   class="kw">public boolean isRightToLeft() {
      class="kw">return this.flags.contains(TokenFlags.RIGHT_TO_LEFT);
   }

   class="kw">public boolean canBeUnary() {
      class="kw">return this.unaryVariant != null;
   }

   @Nullable
   class="kw">public Token getUnaryVariant() {
      class="kw">return this.unaryVariant;
   }

   class="kw">public boolean isUnary() {
      class="kw">return this.flags.contains(TokenFlags.UNARY);
   }

   class="kw">public boolean isOpenBracket() {
      class="kw">return this.flags.contains(TokenFlags.OPENING_BRACKET);
   }

   class="kw">public boolean isOpenTuple() {
      class="kw">return this.flags.contains(TokenFlags.OPENING_TUPLE);
   }

   class="kw">public boolean isCloseBracket() {
      class="kw">return this.flags.contains(TokenFlags.CLOSING_BRACKET);
   }

   @Nullable
   class="kw">public Token getMatchingBracket() {
      class="kw">return this.matchingBracket;
   }

   class="kw">public boolean isList() {
      class="kw">return this.flags.contains(TokenFlags.LIST);
   }
}