public interface ExprTypableReturnForge extends ExprForge
When returning non-null results from {#getRowProperties},
the ExprEvaluator.evaluate(EventBean[], boolean, ExprEvaluatorContext)
must return an instance of Map<String, Object> (HashMap is fine).
When returning non-null results, the the evaluator must also return either Object[] results or Object[][], each object-array following the same exact order as provided by the map, matching the multi-row flag.
Modifier and Type | Method and Description |
---|---|
CodegenExpression |
evaluateTypableMultiCodegen(CodegenMethodScope codegenMethodScope,
ExprForgeCodegenSymbol exprSymbol,
CodegenClassScope codegenClassScope) |
CodegenExpression |
evaluateTypableSingleCodegen(CodegenMethodScope codegenMethodScope,
ExprForgeCodegenSymbol exprSymbol,
CodegenClassScope codegenClassScope) |
LinkedHashMap<String,Object> |
getRowProperties()
Return null to indicate no row-type result available,
or a map of property names and types to indicate a row-type result is available.
|
Boolean |
isMultirow()
Return true for multi-row return, return false for return of single row only
|
evaluateCodegen, getEvaluationType, getExprEvaluator, getForgeConstantType, getForgeRenderable
LinkedHashMap<String,Object> getRowProperties() throws ExprValidationException
ExprValidationException
- if the expression is invalidBoolean isMultirow()
CodegenExpression evaluateTypableSingleCodegen(CodegenMethodScope codegenMethodScope, ExprForgeCodegenSymbol exprSymbol, CodegenClassScope codegenClassScope)
CodegenExpression evaluateTypableMultiCodegen(CodegenMethodScope codegenMethodScope, ExprForgeCodegenSymbol exprSymbol, CodegenClassScope codegenClassScope)
Copyright © 2005–2020. All rights reserved.