public class DrlxParseUtil extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
DrlxParseUtil.RemoveRootNodeResult |
| Modifier and Type | Field and Description |
|---|---|
static String |
THIS_PLACEHOLDER |
| Modifier and Type | Method and Description |
|---|---|
static String |
addCurlyBracesToBlock(String blockString) |
static String |
addSemicolon(String block) |
static boolean |
canCoerceLiteralNumberExpr(Class<?> type) |
static com.github.javaparser.ast.type.Type |
classNameToReferenceType(String className) |
static com.github.javaparser.ast.type.Type |
classToReferenceType(Class<?> declClass) |
static void |
clearAccessorCache() |
static Collection<String> |
collectUsedDeclarationsInExpression(com.github.javaparser.ast.expr.Expression expr) |
static List<com.github.javaparser.ast.Node> |
findAllChildrenRecursive(com.github.javaparser.ast.expr.Expression e) |
static Optional<String> |
findBindingIdFromDotExpression(String expression) |
static com.github.javaparser.ast.expr.MethodCallExpr |
findLastMethodInChain(com.github.javaparser.ast.expr.MethodCallExpr expr) |
static Optional<com.github.javaparser.ast.expr.MethodCallExpr> |
findLastPattern(List<com.github.javaparser.ast.expr.Expression> expressions) |
static DrlxParseUtil.RemoveRootNodeResult |
findRemoveRootNodeViaScope(com.github.javaparser.ast.expr.Expression expr) |
static Optional<com.github.javaparser.ast.Node> |
findRootNodeViaParent(com.github.javaparser.ast.Node expr) |
static Optional<com.github.javaparser.ast.expr.Expression> |
findRootNodeViaScope(com.github.javaparser.ast.expr.Expression expr) |
static Optional<com.github.javaparser.ast.expr.Expression> |
findViaScopeWithPredicate(com.github.javaparser.ast.expr.Expression expr,
Predicate<com.github.javaparser.ast.expr.Expression> predicate) |
static void |
forceCastForName(String nameRef,
com.github.javaparser.ast.type.Type type,
com.github.javaparser.ast.expr.Expression expression)
Mutates expression
such that, if it contains a nameRef, it is replaced and forcibly casted with (type) nameRef.
|
static String |
fromVar(String key) |
static com.github.javaparser.ast.expr.Expression |
generateLambdaWithoutParameters(Collection<String> usedDeclarations,
com.github.javaparser.ast.expr.Expression expr) |
static com.github.javaparser.ast.expr.Expression |
generateLambdaWithoutParameters(Collection<String> usedDeclarations,
com.github.javaparser.ast.expr.Expression expr,
boolean skipFirstParamAsThis,
Optional<Class<?>> patternClass) |
static com.github.javaparser.ast.expr.Expression |
generateLambdaWithoutParameters(Collection<String> usedDeclarations,
com.github.javaparser.ast.expr.Expression expr,
boolean skipFirstParamAsThis,
Optional<Class<?>> patternClass,
RuleContext ruleContext) |
static com.github.javaparser.ast.expr.Expression |
generateLambdaWithoutParameters(com.github.javaparser.ast.expr.Expression expr) |
static Method |
getAccessor(Class<?> clazz,
String name) |
static Class<?> |
getClassFromContext(org.drools.core.addon.TypeResolver typeResolver,
String className) |
static Class<?> |
getClassFromType(org.drools.core.addon.TypeResolver typeResolver,
com.github.javaparser.ast.type.Type type) |
static Type |
getExpressionType(RuleContext context,
org.drools.core.addon.TypeResolver typeResolver,
com.github.javaparser.ast.expr.Expression expr,
Collection<String> usedDeclarations) |
static Field |
getField(Class<?> clazz,
String name) |
static Class<?> |
getLiteralExpressionType(com.github.javaparser.ast.expr.LiteralExpr expr) |
static List<String> |
getPatternListenedProperties(org.drools.compiler.lang.descr.PatternDescr pattern) |
static boolean |
isNameExprWithName(com.github.javaparser.ast.Node expression,
String name) |
static boolean |
isPrimitiveExpression(com.github.javaparser.ast.expr.Expression expr) |
static boolean |
isThisExpression(com.github.javaparser.ast.Node expr) |
static TypedExpression |
nameExprToMethodCallExpr(String name,
Type type,
com.github.javaparser.ast.expr.Expression scope) |
static TypedExpression |
nameExprToMethodCallExprWithCast(String name,
Type type,
com.github.javaparser.ast.expr.Expression scope,
com.github.javaparser.ast.type.Type castType) |
static com.github.javaparser.ast.stmt.BlockStmt |
parseBlock(String ruleConsequenceAsBlock) |
static org.drools.mvel.parser.ast.expr.DrlxExpression |
parseExpression(String expression) |
static com.github.javaparser.ast.expr.Expression |
prepend(com.github.javaparser.ast.expr.Expression scope,
com.github.javaparser.ast.expr.Expression expr) |
static DrlxParseUtil.RemoveRootNodeResult |
removeRootNode(com.github.javaparser.ast.expr.Expression expr) |
static com.github.javaparser.ast.Node |
replaceAllHalfBinaryChildren(com.github.javaparser.ast.Node parent) |
static void |
rescopeNamesToNewScope(com.github.javaparser.ast.expr.Expression newScope,
List<String> names,
com.github.javaparser.ast.expr.Expression e)
Mutates expression
such that, if it contains a NameExpr for any of the
names,
it is replaced with a FieldAccessExpr having newScope as the scope. |
static Type |
returnTypeOfMethodCallExpr(RuleContext context,
org.drools.core.addon.TypeResolver typeResolver,
com.github.javaparser.ast.expr.MethodCallExpr methodCallExpr,
Type clazz,
Collection<String> usedDeclarations) |
static Optional<Type> |
safeResolveType(org.drools.core.addon.TypeResolver typeResolver,
String typeName) |
static com.github.javaparser.ast.type.ClassOrInterfaceType |
toClassOrInterfaceType(Class<?> declClass) |
static com.github.javaparser.ast.type.ClassOrInterfaceType |
toClassOrInterfaceType(String className) |
static org.drools.model.Index.ConstraintType |
toConstraintType(com.github.javaparser.ast.expr.BinaryExpr.Operator operator) |
static com.github.javaparser.ast.type.Type |
toType(Class<?> declClass) |
static String |
toVar(String key) |
static <T extends com.github.javaparser.ast.Node> |
transformDrlNameExprToNameExpr(T e) |
static com.github.javaparser.ast.expr.Expression |
trasformHalfBinaryToBinary(com.github.javaparser.ast.expr.Expression drlxExpr) |
static com.github.javaparser.ast.expr.Expression |
uncastExpr(com.github.javaparser.ast.expr.Expression e) |
static Optional<InvalidExpressionErrorResult> |
validateDuplicateBindings(String ruleName,
List<String> allBindings) |
public static final String THIS_PLACEHOLDER
public static boolean isThisExpression(com.github.javaparser.ast.Node expr)
public static org.drools.model.Index.ConstraintType toConstraintType(com.github.javaparser.ast.expr.BinaryExpr.Operator operator)
public static TypedExpression nameExprToMethodCallExprWithCast(String name, Type type, com.github.javaparser.ast.expr.Expression scope, com.github.javaparser.ast.type.Type castType)
public static TypedExpression nameExprToMethodCallExpr(String name, Type type, com.github.javaparser.ast.expr.Expression scope)
public static Type returnTypeOfMethodCallExpr(RuleContext context, org.drools.core.addon.TypeResolver typeResolver, com.github.javaparser.ast.expr.MethodCallExpr methodCallExpr, Type clazz, Collection<String> usedDeclarations)
public static Type getExpressionType(RuleContext context, org.drools.core.addon.TypeResolver typeResolver, com.github.javaparser.ast.expr.Expression expr, Collection<String> usedDeclarations)
public static boolean canCoerceLiteralNumberExpr(Class<?> type)
public static Class<?> getLiteralExpressionType(com.github.javaparser.ast.expr.LiteralExpr expr)
public static com.github.javaparser.ast.expr.Expression prepend(com.github.javaparser.ast.expr.Expression scope,
com.github.javaparser.ast.expr.Expression expr)
public static Optional<com.github.javaparser.ast.Node> findRootNodeViaParent(com.github.javaparser.ast.Node expr)
public static com.github.javaparser.ast.Node replaceAllHalfBinaryChildren(com.github.javaparser.ast.Node parent)
public static com.github.javaparser.ast.expr.Expression trasformHalfBinaryToBinary(com.github.javaparser.ast.expr.Expression drlxExpr)
public static com.github.javaparser.ast.expr.MethodCallExpr findLastMethodInChain(com.github.javaparser.ast.expr.MethodCallExpr expr)
public static DrlxParseUtil.RemoveRootNodeResult findRemoveRootNodeViaScope(com.github.javaparser.ast.expr.Expression expr)
public static Optional<com.github.javaparser.ast.expr.Expression> findRootNodeViaScope(com.github.javaparser.ast.expr.Expression expr)
public static DrlxParseUtil.RemoveRootNodeResult removeRootNode(com.github.javaparser.ast.expr.Expression expr)
public static com.github.javaparser.ast.stmt.BlockStmt parseBlock(String ruleConsequenceAsBlock)
public static com.github.javaparser.ast.expr.Expression generateLambdaWithoutParameters(Collection<String> usedDeclarations, com.github.javaparser.ast.expr.Expression expr)
public static com.github.javaparser.ast.expr.Expression generateLambdaWithoutParameters(com.github.javaparser.ast.expr.Expression expr)
public static com.github.javaparser.ast.expr.Expression generateLambdaWithoutParameters(Collection<String> usedDeclarations, com.github.javaparser.ast.expr.Expression expr, boolean skipFirstParamAsThis, Optional<Class<?>> patternClass)
public static com.github.javaparser.ast.expr.Expression generateLambdaWithoutParameters(Collection<String> usedDeclarations, com.github.javaparser.ast.expr.Expression expr, boolean skipFirstParamAsThis, Optional<Class<?>> patternClass, RuleContext ruleContext)
public static com.github.javaparser.ast.type.Type classToReferenceType(Class<?> declClass)
public static com.github.javaparser.ast.type.Type classNameToReferenceType(String className)
public static com.github.javaparser.ast.type.Type toType(Class<?> declClass)
public static com.github.javaparser.ast.type.ClassOrInterfaceType toClassOrInterfaceType(Class<?> declClass)
public static com.github.javaparser.ast.type.ClassOrInterfaceType toClassOrInterfaceType(String className)
public static Optional<String> findBindingIdFromDotExpression(String expression)
public static Optional<com.github.javaparser.ast.expr.Expression> findViaScopeWithPredicate(com.github.javaparser.ast.expr.Expression expr, Predicate<com.github.javaparser.ast.expr.Expression> predicate)
public static org.drools.mvel.parser.ast.expr.DrlxExpression parseExpression(String expression)
public static Class<?> getClassFromType(org.drools.core.addon.TypeResolver typeResolver, com.github.javaparser.ast.type.Type type)
public static Class<?> getClassFromContext(org.drools.core.addon.TypeResolver typeResolver, String className)
public static boolean isPrimitiveExpression(com.github.javaparser.ast.expr.Expression expr)
public static void forceCastForName(String nameRef, com.github.javaparser.ast.type.Type type, com.github.javaparser.ast.expr.Expression expression)
nameRef, it is replaced and forcibly casted with
(type) nameRef.
expression - a mutated expressionpublic static void rescopeNamesToNewScope(com.github.javaparser.ast.expr.Expression newScope,
List<String> names,
com.github.javaparser.ast.expr.Expression e)
names,
it is replaced with a FieldAccessExpr having newScope as the scope.public static List<String> getPatternListenedProperties(org.drools.compiler.lang.descr.PatternDescr pattern)
public static Optional<com.github.javaparser.ast.expr.MethodCallExpr> findLastPattern(List<com.github.javaparser.ast.expr.Expression> expressions)
public static boolean isNameExprWithName(com.github.javaparser.ast.Node expression,
String name)
public static List<com.github.javaparser.ast.Node> findAllChildrenRecursive(com.github.javaparser.ast.expr.Expression e)
public static Optional<InvalidExpressionErrorResult> validateDuplicateBindings(String ruleName, List<String> allBindings)
public static void clearAccessorCache()
public static <T extends com.github.javaparser.ast.Node> T transformDrlNameExprToNameExpr(T e)
public static com.github.javaparser.ast.expr.Expression uncastExpr(com.github.javaparser.ast.expr.Expression e)
public static Collection<String> collectUsedDeclarationsInExpression(com.github.javaparser.ast.expr.Expression expr)
Copyright © 2001–2020 JBoss by Red Hat. All rights reserved.