Function interface
Пакет: com.hypixel.hytale.server.npc.util.expression
Файл: com/hypixel/hytale/server/npc/util/expression/Scope.java
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
void |
callvoid call(ExecutionContext var1, int var2) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.util.expression;
class="kw">import java.util.function.BooleanSupplier;
class="kw">import java.util.function.DoubleSupplier;
class="kw">import java.util.function.Supplier;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class="kw">interface Scope {
Supplier<String> getStringSupplier(String var1);
DoubleSupplier getNumberSupplier(String var1);
BooleanSupplier getBooleanSupplier(String var1);
Supplier<String[]> getStringArraySupplier(String var1);
Supplier<double[]> getNumberArraySupplier(String var1);
Supplier<boolean[]> getBooleanArraySupplier(String var1);
Scope.Function getFunction(String var1);
class="kw">default String getString(String var1) {
class="kw">return this.getStringSupplier(var1).get();
}
class="kw">default double getNumber(String var1) {
class="kw">return this.getNumberSupplier(var1).getAsDouble();
}
class="kw">default boolean getBoolean(String var1) {
class="kw">return this.getBooleanSupplier(var1).getAsBoolean();
}
class="kw">default String[] getStringArray(String var1) {
class="kw">return this.getStringArraySupplier(var1).get();
}
class="kw">default double[] getNumberArray(String var1) {
class="kw">return this.getNumberArraySupplier(var1).get();
}
class="kw">default boolean[] getBooleanArray(String var1) {
class="kw">return this.getBooleanArraySupplier(var1).get();
}
boolean isConstant(String var1);
@Nullable
ValueType getType(String var1);
@Nonnull
class="kw">static String encodeFunctionName(@Nonnull String var0, @Nonnull ValueType[] var1) {
StringBuilder var2 = new StringBuilder(var0).append('@');
for (int var3 = 0; var3 < var1.length; var3++) {
var2.append(encodeType(var1[var3]));
}
class="kw">return var2.toString();
}
class="kw">static char encodeType(@Nonnull ValueType var0) {
class="kw">return class="kw">switch (var0) {
case NUMBER -> 'n';
case STRING -> 's';
case BOOLEAN -> 'b';
case NUMBER_ARRAY -> 'N';
case STRING_ARRAY -> 'S';
case BOOLEAN_ARRAY -> 'B';
class="kw">default -> throw new IllegalStateException("Type cannot be encoded for function name: " + var0);
};
}
@FunctionalInterface
class="kw">interface Function {
void call(ExecutionContext var1, int var2);
}
}