Class CompileContext
java.lang.Object
com.hypixel.hytale.server.npc.util.expression.compile.CompileContext
- All Implemented Interfaces:
Parser.ParsedTokenConsumer
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ExecutionContextprivate List<ExecutionContext.Instruction> private final Parserprivate ValueTypeprivate Scope -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcheckResultType(ValueType type) compile(String expression, Scope compileScope, boolean fullResolve, List<ExecutionContext.Instruction> instructions) protected ValueTypecompile0(String expression, Scope compileScope, boolean fullResolve, List<ExecutionContext.Instruction> instructions) voiddone()getScope()voidprocessFunction(int argumentCount) voidprocessOperator(Parser.ParsedToken operator) voidprocessTuple(Parser.ParsedToken openingToken, int argumentCount) voidpushOperand(Parser.ParsedToken parsedToken) voidsetInstructions(List<ExecutionContext.Instruction> instructionList)
-
Field Details
-
parser
-
operandStack
-
executionContext
-
scope
-
instructions
-
resultType
-
-
Constructor Details
-
CompileContext
public CompileContext() -
CompileContext
-
-
Method Details
-
getScope
-
getOperandStack
-
getExecutionContext
-
compile
-
compile
public ValueType compile(@Nonnull String expression, Scope compileScope, boolean fullResolve, List<ExecutionContext.Instruction> instructions) -
compile0
protected ValueType compile0(@Nonnull String expression, Scope compileScope, boolean fullResolve, List<ExecutionContext.Instruction> instructions) -
compile
-
getInstructions
-
setInstructions
-
getResultType
-
getAsOperand
-
checkResultType
-
pushOperand
- Specified by:
pushOperandin interfaceParser.ParsedTokenConsumer
-
processOperator
- Specified by:
processOperatorin interfaceParser.ParsedTokenConsumer- Throws:
ParseException
-
processFunction
- Specified by:
processFunctionin interfaceParser.ParsedTokenConsumer- Throws:
ParseException
-
processTuple
- Specified by:
processTuplein interfaceParser.ParsedTokenConsumer
-
done
public void done()- Specified by:
donein interfaceParser.ParsedTokenConsumer
-