private StringBuilder processRightAtomicExpr( StringBuilder left, AtomicExprDescr atomicExpr, ConstraintConnectiveDescr parent, int parentIdx, MVELDumperContext context ) { String expr = atomicExpr.getExpression().trim(); expr = processEval( expr ); String[] constrAndExpr = processImplicitConstraints(expr, atomicExpr, parent, parentIdx, context); left.insert( 0, constrAndExpr[0] ); return new StringBuilder( constrAndExpr[1] ); }
private String[] processAtomicExpression( StringBuilder sbuilder, MVELDumperContext context, AtomicExprDescr atomicExpr, ConstraintConnectiveDescr parent, int parentIdx ) { String expr = atomicExpr.getExpression().trim(); expr = processEval(expr); String[] constrAndExpr = processImplicitConstraints( expr, atomicExpr, parent, parentIdx, context ); // top-level, implicit constraints will be processed in different nodes. // Nested CCDs require all constraints to be evaluated locally, as a complex constraints sbuilder.append( context.isCcdNested() ? constrAndExpr[ 0 ] + constrAndExpr[ 1 ] : constrAndExpr[ 1 ] ); return constrAndExpr; }
protected boolean processAtomicExpression( RuleBuildContext context, Pattern pattern, BaseDescr d, String expr, Map<String, OperatorDescr> aliases ) { if ( d instanceof AtomicExprDescr ) { Matcher m = evalRegexp.matcher( ((AtomicExprDescr) d).getExpression() ); if ( m.find() ) { // MVELDumper already stripped the eval // this will build the eval using the specified dialect PredicateDescr pdescr = new PredicateDescr( context.getRuleDescr().getResource(), expr ); pdescr.copyLocation( d ); buildEval( context, pattern, pdescr, aliases, expr, true ); return true; } } return false; }
result = (expr!=null?expr.result:null); if( result instanceof AtomicExprDescr ) { ((AtomicExprDescr)result).setExpression("(" +((AtomicExprDescr)result).getExpression() + ")" );
result = new AtomicExprDescr( (left!=null?input.toString(left.start,left.stop):null) ); } else if ( (left!=null?left.result:null) instanceof AtomicExprDescr ) { if ( (left!=null?input.toString(left.start,left.stop):null).equals(((AtomicExprDescr)(left!=null?left.result:null)).getExpression()) ) { result = (left!=null?left.result:null); } else {
result = ue; if( result instanceof AtomicExprDescr ) { ((AtomicExprDescr)result).setExpression( "+" + ((AtomicExprDescr)result).getExpression() ); result = ue; if( result instanceof AtomicExprDescr ) { ((AtomicExprDescr)result).setExpression( "-" + ((AtomicExprDescr)result).getExpression() );
BaseDescr descr = ( (value!=null?value.result:null) != null && ( (!((value!=null?value.result:null) instanceof AtomicExprDescr)) || ((value!=null?input.toString(value.start,value.stop):null).equals(((AtomicExprDescr)(value!=null?value.result:null)).getExpression())) )) ? (value!=null?value.result:null) : new AtomicExprDescr( (value!=null?input.toString(value.start,value.stop):null) ) ;