classpublicPriority 3
ExecutionContext
com.hypixel.hytale.server.npc.util.expression.ExecutionContext
64
Methods
64
Public Methods
6
Fields
2
Constructors
Constants
ExecutionContext.InstructionBITWISE_AND= context -> context.popPush(context.getInt(1) & context.getInt(0), 2)
ExecutionContext.InstructionBITWISE_NOT= context -> context.push(~context.popInt())
ExecutionContext.InstructionBITWISE_OR= context -> context.popPush(context.getInt(1) | context.getInt(0), 2)
ExecutionContext.InstructionBITWISE_XOR= context -> context.popPush(context.getInt(1) ^ context.getInt(0), 2)
ExecutionContext.InstructionDIVIDE= context -> context.popPush(context.getNumber(1) / context.getNumber(0), 2)
ExecutionContext.InstructionEQUAL= context -> context.popPush(context.getNumber(1) == context.getNumber(0), 2)
ExecutionContext.InstructionEQUAL_BOOL= context -> context.popPush(context.getBoolean(1) == context.getBoolean(0), 2)
ExecutionContext.InstructionEXPONENTIATION= context -> context.popPush(Math.pow(context.getNumber(1), context.getNumber(0)), 2)
ExecutionContext.InstructionGREATER= context -> context.popPush(context.getNumber(1) > context.getNumber(0), 2)
ExecutionContext.InstructionGREATER_EQUAL= context -> context.popPush(context.getNumber(1) >= context.getNumber(0), 2)
ExecutionContext.InstructionLESS= context -> context.popPush(context.getNumber(1) < context.getNumber(0), 2)
ExecutionContext.InstructionLESS_EQUAL= context -> context.popPush(context.getNumber(1) <= context.getNumber(0), 2)
ExecutionContext.InstructionLOGICAL_AND= context -> context.popPush(context.getBoolean(1) && context.getBoolean(0), 2)
ExecutionContext.InstructionLOGICAL_NOT= context -> context.push(!context.popBoolean())
ExecutionContext.InstructionLOGICAL_OR= context -> context.popPush(context.getBoolean(1) || context.getBoolean(0), 2)
ExecutionContext.InstructionMINUS= context -> context.popPush(context.getNumber(1) - context.getNumber(0), 2)
ExecutionContext.InstructionMULTIPLY= context -> context.popPush(context.getNumber(1) * context.getNumber(0), 2)
ExecutionContext.InstructionNOT_EQUAL= context -> context.popPush(context.getNumber(1) != context.getNumber(0), 2)
ExecutionContext.InstructionNOT_EQUAL_BOOL= context -> context.popPush(context.getBoolean(1) != context.getBoolean(0), 2)
ExecutionContext.InstructionPLUS= context -> context.popPush(context.getNumber(1) + context.getNumber(0), 2)
ExecutionContext.InstructionREMAINDER= context -> context.popPush(context.getNumber(1) % context.getNumber(0), 2)
intSTACK_GROW_INCREMENT= 8
ExecutionContext.InstructionUNARY_MINUS= context -> context.push(-context.popNumber())
ExecutionContext.InstructionUNARY_PLUS= context -> {
}
Constructors
public
ExecutionContext(Scope scope)public
ExecutionContext()Methods
Public Methods (64)
public
ValueType execute(List<ExecutionContext.Instruction> instructions, Scope scope)public
ValueType execute(List<ExecutionContext.Instruction> instructions)public
ValueType execute(ExecutionContext.Instruction[] instructions, Scope scope)public
ValueType execute(ExecutionContext.Instruction[] instructions)publicstatic
ExecutionContext.Instruction genBooleanPACK(int size)@Nonnull
publicstatic
ExecutionContext.Instruction genCALL(String ident, int numArgs, Scope scope)@Nonnull
publicstatic
ExecutionContext.Instruction genNumberPACK(int size)@Nonnull
publicstatic
ExecutionContext.Instruction genPACK(ValueType arrayType, int size)@Nonnull
publicstatic
ExecutionContext.Instruction genPUSH(String value)@Nonnull
publicstatic
ExecutionContext.Instruction genPUSH(double value)@Nonnull
publicstatic
ExecutionContext.Instruction genPUSH(boolean value)@Nonnull
publicstatic
ExecutionContext.Instruction genPUSH(String[] value)@Nonnull
publicstatic
ExecutionContext.Instruction genPUSH(double[] value)@Nonnull
publicstatic
ExecutionContext.Instruction genPUSH(boolean[] value)@Nonnull
publicstatic
ExecutionContext.Instruction genPUSHEmptyArray()@Nonnull
publicstatic
ExecutionContext.Instruction genREAD(String ident, ValueType type, Scope scope)@Nonnull
publicstatic
ExecutionContext.Instruction genStringPACK(int size)@Nonnull
public
boolean getBoolean(int index)public
boolean[] getBooleanArray(int index)public
String getCombatConfig()public
int getInt(int index)public
Map<String, String> getInteractionVars()public
double getNumber(int index)public
double[] getNumberArray(int index)public
Scope getScope()public
String getString(int index)public
String[] getStringArray(int index)@Nullable
public
ValueType getType()public
String popAsString()public
boolean popBoolean()public
boolean[] popBooleanArray()public
int popInt()public
double popNumber()public
double[] popNumberArray()public
void popPush(String value, int popCount)public
void popPush(double value, int popCount)public
void popPush(int value, int popCount)public
void popPush(boolean value, int popCount)public
void popPush(String[] value, int popCount)public
void popPush(double[] value, int popCount)public
void popPush(boolean[] value, int popCount)public
void popPushEmptyArray(int popCount)public
String popString()public
String[] popStringArray()@Nullable
public
void push(String value)public
void push(double value)public
void push(int value)public
void push(boolean value)public
void push(String[] value)public
void push(double[] value)public
void push(boolean[] value)public
void pushEmptyArray()public
ValueType set(String value)public
ValueType set(double value)public
ValueType set(boolean value)public
ValueType set(String[] value)public
ValueType set(double[] value)public
ValueType set(boolean[] value)public
void setCombatConfig(String combatConfig)public
ValueType setEmptyArray()public
void setInteractionVars(Map<String, String> interactionVars)public
Scope setScope(Scope scope)public
String toString()@Nonnull@Override
public
ExecutionContext.Operand top()Fields
Protected Fields (6)
protected
String combatConfigprotected
Map<String, String> interactionVarsprotected
ValueType lastPushedTypeprotected
ExecutionContext.Operand[] operandStackprotected
Scope scopeprotected
int stackTopRelated Classes
Used By