Class BooleanExpression
- java.lang.Object
 - 
- de.xima.fc.workflow.parser.infix.bool.BooleanExpression
 
 
- 
public final class BooleanExpression extends Object
Utility methods specific to infix expressions consisting of boolean constant, operators, and variables. See alsoInfixExpression. A boolean infix expression looks like this:(a or b) and c or true
The supported operators are defined byEBooleanOperator, the defined constants byEBooleanConstant.- Since:
 - 7.0.0
 - Author:
 - XIMA MEDIA GmbH
 
 
- 
- 
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Booleaneval(CharSequence expression, Function<String,Boolean> variableResolver, Locale locale)Utility method that retrieves the parser, parses the infix expression, and evaluates it.static Iterable<IConstant>getConstants()static IInfixExpressionHandler<de.xima.fc.workflow.parser.infix.bool.EBooleanConstant,de.xima.fc.workflow.parser.infix.bool.EBooleanOperator>getHandler()static Iterable<IOperator>getOperators()static IEvalContext<Boolean,de.xima.fc.workflow.parser.infix.bool.EBooleanConstant,de.xima.fc.workflow.parser.infix.bool.EBooleanOperator>newEvalContext(Function<String,Boolean> variableResolver)Creates a new context for evaluating boolean expressions. 
 - 
 
- 
- 
Method Detail
- 
eval
public static Boolean eval(CharSequence expression, Function<String,Boolean> variableResolver, Locale locale) throws InfixExpressionException
Utility method that retrieves the parser, parses the infix expression, and evaluates it.- Parameters:
 expression- Expression to parse.variableResolver- Resolver that returns the value for a given variable name. May returnnullwhen no value is available -- this is treated asfalse. If you have aMap<String, Boolean>, you can just use amap::getmethod reference.locale- Locale for localizing error messages.- Returns:
 - The result obtained by evaluating the expression with the given variable resolver.
 - Throws:
 InfixExpressionException- When the expression could not be parsed or evaluated, such as when its syntax is wrong or the variable resolver threw an exception.
 
- 
getHandler
public static IInfixExpressionHandler<de.xima.fc.workflow.parser.infix.bool.EBooleanConstant,de.xima.fc.workflow.parser.infix.bool.EBooleanOperator> getHandler()
- Returns:
 - The immutable instance of the parser for boolean infix expressions.
 
 
- 
newEvalContext
public static IEvalContext<Boolean,de.xima.fc.workflow.parser.infix.bool.EBooleanConstant,de.xima.fc.workflow.parser.infix.bool.EBooleanOperator> newEvalContext(Function<String,Boolean> variableResolver)
Creates a new context for evaluating boolean expressions.- Parameters:
 variableResolver- Resolver that returns the value for a given variable name. May returnnullwhen no value is available -- this is treated asfalse.- Returns:
 - A new evaluation context with the given variable resolver.
 
 
- 
getOperators
public static Iterable<IOperator> getOperators()
- Returns:
 - A list of all operators supported by this type of expression.
 
 
 - 
 
 -