Package org.mvel2.compiler
Class ExpressionCompiler
java.lang.Object
org.mvel2.compiler.AbstractParser
org.mvel2.compiler.ExpressionCompiler
- All Implemented Interfaces:
Serializable
,Parser
This is the main MVEL compiler.
- See Also:
-
Field Summary
FieldsFields inherited from class org.mvel2.compiler.AbstractParser
CLASS_LITERALS, compileMode, ctx, cursor, debugSymbols, dStack, end, expr, fields, GET, GET_OR_CREATE, greedy, lastLineStart, lastNode, lastWasComment, lastWasIdentifier, lastWasLineLabel, length, LEVEL_0_PROPERTY_ONLY, LEVEL_1_BASIC_LANG, LEVEL_2_MULTI_STATEMENT, LEVEL_3_ITERATION, LEVEL_4_ASSIGNMENT, LEVEL_5_CONTROL_FLOW, line, literalOnly, LITERALS, OP_CONTINUE, OP_NOT_LITERAL, OP_OVERFLOW, OP_RESET_FRAME, OP_TERMINATE, OPERATORS, pCtx, REMOVE, SET, splitAccumulator, st, start, stk, variableFactory
-
Constructor Summary
ConstructorsConstructorDescriptionExpressionCompiler
(char[] expression) ExpressionCompiler
(char[] expression, int start, int offset) ExpressionCompiler
(char[] expression, int start, int offset, ParserContext ctx) ExpressionCompiler
(char[] expression, ParserContext ctx) ExpressionCompiler
(String expression) ExpressionCompiler
(String expression, boolean verifying) ExpressionCompiler
(String expression, int start, int offset, ParserContext ctx) ExpressionCompiler
(String expression, ParserContext ctx) -
Method Summary
Modifier and TypeMethodDescription_compile()
Initiate an in-context compileShared.compile()
private boolean
compileReduce
(int opCode, ASTLinkedList astBuild) private Object
private static boolean
isBooleanOperator
(int operator) boolean
boolean
boolean
void
setReturnType
(Class returnType) void
setVerifying
(boolean verifying) void
setVerifyOnly
(boolean verifyOnly) protected ASTNode
verify
(ParserContext pCtx, ASTNode tk) Methods inherited from class org.mvel2.compiler.AbstractParser
addFatalError, addFatalError, arithmeticFunctionReduction, captureIdentifier, captureToEOS, captureToEOSorEOL, captureToEOT, captureToNextTokenJunction, expectEOS, expectNextChar_IW, getCursor, getExpression, handleSubstatement, handleUnion, ifThenElseBlockContinues, incNextNonBlank, isArithmeticOperator, isNextIdentifier, isNextIdentifierOrLiteral, isStatementNotManuallyTerminated, lastNonWhite, loadLanguageFeaturesByLevel, lookAhead, lookAhead, lookBehind, lookToLast, nextNonBlank, nextToken, nextTokenSkipSymbols, reduce, setExpression, setExpression, setLanguageLevel, setupParser, skipWhitespace, tokenContinues, trimLeft, trimRight, trimWhitespace
-
Field Details
-
returnType
-
verifyOnly
private boolean verifyOnly -
verifying
private boolean verifying -
secondPassOptimization
private boolean secondPassOptimization
-
-
Constructor Details
-
ExpressionCompiler
-
ExpressionCompiler
-
ExpressionCompiler
public ExpressionCompiler(char[] expression) -
ExpressionCompiler
-
ExpressionCompiler
public ExpressionCompiler(char[] expression, int start, int offset) -
ExpressionCompiler
-
ExpressionCompiler
-
ExpressionCompiler
-
-
Method Details
-
compile
-
_compile
Initiate an in-context compileShared. This method should really only be called by the internal API.- Returns:
- compiled expression object
-
getStackValueResult
-
compileReduce
-
isBooleanOperator
private static boolean isBooleanOperator(int operator) -
verify
-
isVerifying
public boolean isVerifying() -
setVerifying
public void setVerifying(boolean verifying) -
isVerifyOnly
public boolean isVerifyOnly() -
setVerifyOnly
public void setVerifyOnly(boolean verifyOnly) -
getReturnType
-
setReturnType
-
getParserContextState
-
isLiteralOnly
public boolean isLiteralOnly()
-