Modifier and Type | Method and Description |
---|---|
static ParserContext |
ParserContext.create() |
ParserContext |
ParserContext.createSubcontext() |
ParserContext |
ParserContext.stronglyTyped() |
ParserContext |
ParserContext.withImport(Class clazz) |
ParserContext |
ParserContext.withIndexedVars(String[] varNames) |
ParserContext |
ParserContext.withInput(String name,
Class type) |
ParserContext |
ParserContext.withInputs(Map<String,Class> inputs) |
ParserContext |
ParserContext.withTypeParameter(String name,
Class type) |
ParserContext |
ParserContext.withTypeParameters(Map<String,Map<String,Class>> typeParameters) |
Modifier and Type | Method and Description |
---|---|
static void |
MVEL.analysisCompile(char[] expression,
ParserContext ctx)
Performs an analysis compile, which will populate the ParserContext with type, input and variable information,
but will not produce a payload.
|
static void |
MVEL.analysisCompile(String expression,
ParserContext ctx) |
static Class |
MVEL.analyze(char[] expression,
ParserContext ctx) |
static Class |
MVEL.analyze(String expression,
ParserContext ctx) |
static Serializable |
MVEL.compileExpression(char[] expression,
ParserContext ctx) |
static Serializable |
MVEL.compileExpression(String expression,
ParserContext ctx)
Compiles an expression, and accepts a
ParserContext instance. |
static Serializable |
MVEL.compileGetExpression(char[] expression,
ParserContext ctx) |
static Serializable |
MVEL.compileGetExpression(String expression,
ParserContext ctx) |
static Serializable |
MVEL.compileSetExpression(char[] expression,
Class ingressType,
ParserContext ctx) |
static Serializable |
MVEL.compileSetExpression(char[] expression,
ParserContext ctx) |
static Serializable |
MVEL.compileSetExpression(String expression,
Class ingressType,
ParserContext ctx) |
static Serializable |
MVEL.compileSetExpression(String expression,
ParserContext ctx) |
Modifier and Type | Method and Description |
---|---|
static WithNode.ParmValuePair[] |
WithNode.compileWithExpressions(char[] block,
String nestParm,
Class egressType,
ParserContext pCtx) |
static Class |
TypeDescriptor.getClassReference(Class baseType,
TypeDescriptor tDescr,
VariableResolverFactory factory,
ParserContext ctx) |
static Class |
TypeDescriptor.getClassReference(ParserContext ctx,
Class cls,
TypeDescriptor tDescr) |
static Class |
TypeDescriptor.getClassReference(ParserContext ctx,
TypeDescriptor tDescr) |
Constructor and Description |
---|
AssertNode(char[] expr,
int fields,
ParserContext pCtx) |
AssignmentNode(char[] expr,
int fields,
ParserContext pCtx) |
BinaryOperation(int operation,
ASTNode left,
ASTNode right,
ParserContext ctx) |
DeclProtoVarNode(String name,
Proto type,
int fields,
ParserContext pCtx) |
DeclTypedVarNode(String name,
Class type,
int fields,
ParserContext pCtx) |
DeepAssignmentNode(char[] expr,
int fields,
int operation,
String name,
ParserContext pCtx) |
DeepAssignmentNode(char[] expr,
int fields,
ParserContext pCtx) |
DoNode(char[] condition,
char[] block,
int fields,
ParserContext pCtx) |
DoUntilNode(char[] condition,
char[] block,
ParserContext pCtx) |
Fold(char[] name,
int fields,
ParserContext pCtx) |
ForEachNode(char[] condition,
char[] block,
int fields,
ParserContext pCtx) |
ForNode(char[] condition,
char[] block,
int fields,
ParserContext pCtx) |
Function(String name,
char[] parameters,
char[] block,
ParserContext pCtx) |
IfNode(char[] condition,
char[] block,
int fields,
ParserContext pCtx) |
IndexedAssignmentNode(char[] expr,
int fields,
int register,
ParserContext pCtx) |
IndexedAssignmentNode(char[] expr,
int fields,
int operation,
String name,
int register,
ParserContext pCtx) |
IndexedOperativeAssign(char[] expr,
int operation,
int register,
int fields,
ParserContext pCtx) |
InlineCollectionNode(char[] expr,
int start,
int end,
int fields,
Class type,
ParserContext pctx) |
InlineCollectionNode(char[] expr,
int start,
int end,
int fields,
ParserContext pctx) |
Invert(char[] name,
int fields,
ParserContext pCtx) |
Negation(char[] name,
int fields,
ParserContext pCtx) |
NewObjectNode(TypeDescriptor typeDescr,
int fields,
ParserContext pCtx) |
OperativeAssign(String variableName,
char[] expr,
int operation,
int fields,
ParserContext pCtx) |
ProtoVarNode(char[] expr,
int fields,
Proto type,
ParserContext pCtx) |
RegExMatch(char[] expr,
int fields,
char[] pattern,
ParserContext pCtx) |
ReturnNode(char[] expr,
int fields,
ParserContext pCtx) |
Sign(char[] expr,
int start,
int end,
int fields,
ParserContext pCtx) |
Substatement(char[] expr,
int fields,
ParserContext pCtx) |
ThisWithNode(char[] expr,
char[] block,
int fields,
ParserContext pCtx) |
TypeCast(char[] expr,
Class cast,
int fields,
ParserContext pCtx) |
TypedVarNode(char[] expr,
int fields,
Class type,
ParserContext pCtx) |
UntilNode(char[] condition,
char[] block,
int fields,
ParserContext pCtx) |
WhileNode(char[] condition,
char[] block,
int fields,
ParserContext pCtx) |
WithNode.ParmValuePair(String parameter,
ExecutableStatement statement,
Class ingressType,
ParserContext pCtx) |
WithNode(char[] expr,
char[] block,
int fields,
ParserContext pCtx) |
Modifier and Type | Field and Description |
---|---|
protected ParserContext |
AbstractParser.pCtx |
Modifier and Type | Field and Description |
---|---|
protected static ThreadLocal<ParserContext> |
AbstractParser.parserContext |
Modifier and Type | Method and Description |
---|---|
static ParserContext |
AbstractParser.contextControl(int operation,
ParserContext pCtx,
AbstractParser parser) |
static ParserContext |
AbstractParser.getCurrentThreadParserContext() |
ParserContext |
CompiledExpression.getParserContext() |
protected ParserContext |
AbstractParser.getParserContext() |
ParserContext |
ExpressionCompiler.getParserContextState() |
ParserContext |
AbstractParser.getPCtx() |
Modifier and Type | Method and Description |
---|---|
CompiledExpression |
ExpressionCompiler.compile(ParserContext ctx)
Deprecated.
|
static ParserContext |
AbstractParser.contextControl(int operation,
ParserContext pCtx,
AbstractParser parser) |
void |
AbstractParser.newContext(ParserContext pCtx)
Create a new ParserContext in the current thread, using the one specified.
|
static void |
AbstractParser.setCurrentThreadParserContext(ParserContext pCtx) |
void |
CompiledExpression.setParserContext(ParserContext parserContext) |
void |
AbstractParser.setPCtx(ParserContext pCtx) |
protected ASTNode |
ExpressionCompiler.verify(ParserContext pCtx,
ASTNode tk) |
Constructor and Description |
---|
CompiledAccExpression(char[] expression,
Class ingressType,
ParserContext context) |
CompiledExpression(ASTLinkedList astMap,
String sourceName,
Class egressType,
ParserContext ctx,
boolean literalOnly) |
ExpressionCompiler(char[] expression,
ParserContext ctx) |
ExpressionCompiler(String expression,
ParserContext ctx) |
PropertyVerifier(char[] property,
ParserContext parserContext) |
PropertyVerifier(char[] property,
ParserContext parserContext,
Class contextType) |
PropertyVerifier(String property,
ParserContext parserContext) |
PropertyVerifier(String property,
ParserContext parserContext,
Class root) |
Modifier and Type | Method and Description |
---|---|
ParserContext |
Frame.getParserContext() |
Modifier and Type | Method and Description |
---|---|
void |
Frame.setParserContext(ParserContext parserContext) |
Constructor and Description |
---|
Frame(LineLabel label,
VariableResolverFactory factory,
ParserContext pCtx) |
Constructor and Description |
---|
StaticMethodImportResolverFactory(ParserContext ctx) |
TypeInjectionResolverFactoryImpl(ParserContext ctx,
VariableResolverFactory nextVariableResolverFactory) |
Modifier and Type | Method and Description |
---|---|
Accessor |
AccessorOptimizer.optimizeAccessor(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory,
boolean rootThisRef,
Class ingressType) |
Accessor |
AccessorOptimizer.optimizeCollection(ParserContext pCtx,
Object collectionGraph,
Class type,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory) |
Accessor |
AccessorOptimizer.optimizeObjectCreation(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory) |
Accessor |
AccessorOptimizer.optimizeSetAccessor(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory,
boolean rootThisRef,
Object value,
Class ingressType) |
Modifier and Type | Method and Description |
---|---|
Accessor |
DynamicOptimizer.optimizeAccessor(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory,
boolean rootThisRef,
Class ingressType) |
Accessor |
DynamicOptimizer.optimizeCollection(ParserContext pCtx,
Object rootObject,
Class type,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory) |
Accessor |
DynamicOptimizer.optimizeObjectCreation(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory) |
Accessor |
DynamicOptimizer.optimizeSetAccessor(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory,
boolean rootThisRef,
Object value,
Class valueType) |
Constructor and Description |
---|
DynamicGetAccessor(ParserContext context,
char[] property,
int type,
Accessor _accessor) |
DynamicSetAccessor(ParserContext context,
char[] property,
Accessor _accessor) |
Modifier and Type | Method and Description |
---|---|
Accessor |
ASMAccessorOptimizer.optimizeAccessor(ParserContext pCtx,
char[] property,
Object staticContext,
Object thisRef,
VariableResolverFactory factory,
boolean root,
Class ingressType) |
Accessor |
ASMAccessorOptimizer.optimizeCollection(ParserContext pCtx,
Object o,
Class type,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory) |
Accessor |
ASMAccessorOptimizer.optimizeObjectCreation(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory) |
Accessor |
ASMAccessorOptimizer.optimizeSetAccessor(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory,
boolean rootThisRef,
Object value,
Class ingressType) |
Modifier and Type | Method and Description |
---|---|
Accessor |
ReflectiveAccessorOptimizer.optimizeAccessor(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory,
boolean root,
Class ingressType) |
Accessor |
ReflectiveAccessorOptimizer.optimizeCollection(ParserContext pCtx,
Object o,
Class type,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory) |
Accessor |
ReflectiveAccessorOptimizer.optimizeObjectCreation(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory) |
Accessor |
ReflectiveAccessorOptimizer.optimizeSetAccessor(ParserContext pCtx,
char[] property,
Object ctx,
Object thisRef,
VariableResolverFactory factory,
boolean rootThisRef,
Object value,
Class ingressType) |
Constructor and Description |
---|
ExprValueAccessor(String ex,
Class expectedType,
Object ctx,
VariableResolverFactory factory,
ParserContext pCtx) |
Constructor and Description |
---|
WithAccessor.ExecutablePairs(String parameter,
ExecutableStatement statement,
Class ingressType,
ParserContext pCtx) |
Modifier and Type | Method and Description |
---|---|
static int |
ParseTools.balancedCaptureWithLineAccounting(char[] chars,
int start,
char type,
ParserContext pCtx) |
static int |
ParseTools.captureToEOS(char[] expr,
int cursor,
ParserContext pCtx) |
static int |
ParseTools.captureToNextTokenJunction(char[] expr,
int cursor,
ParserContext pCtx) |
static void |
ProtoParser.checkForPossibleUnresolvedViolations(char[] expr,
int cursor,
ParserContext pCtx)
This is such a horrible hack, but it's more performant than any other horrible hack I can think of
right now.
|
static Class |
ParseTools.createClass(String className,
ParserContext pCtx) |
static ASTLinkedList |
CompilerTools.finalizePayload(ASTLinkedList astLinkedList,
boolean secondPassOptimization,
ParserContext ctx)
Finalize the payload, by reducing any stack-based-operations to dedicated nodes where possible.
|
static Class |
ParseTools.findClass(VariableResolverFactory factory,
String name,
ParserContext ctx) |
static Class |
PropertyTools.getReturnType(Class clazz,
String property,
ParserContext ctx) |
Object |
CollectionParser.parseCollection(char[] property,
boolean subcompile,
Class colType,
ParserContext pCtx) |
Object |
CollectionParser.parseCollection(char[] property,
boolean subcompile,
ParserContext pCtx) |
static int |
ParseTools.skipWhitespace(char[] expr,
int cursor,
ParserContext pCtx) |
static Serializable |
ParseTools.subCompileExpression(char[] expression,
ParserContext ctx) |
static Serializable |
ParseTools.subCompileExpression(String expression,
ParserContext ctx) |
Constructor and Description |
---|
FunctionParser(String functionName,
int cursor,
int endOffset,
char[] expr,
ParserContext pCtx,
ExecutionStack splitAccumulator) |
ProtoParser(char[] expr,
int offset,
int offsetEnd,
String protoName,
ParserContext pCtx,
int fields,
ExecutionStack splitAccumulator) |
Copyright © 2014. All rights reserved.