/** * Constructor for CaseExpression objects * @param expression a non-null expression * @param when a non-null List containing at least one Expression * @param then a non-null List containing at least one Expression */ public CaseExpression(Expression expression, List when, List then) { setExpression(expression); setWhen(when, then); }
/** * Constructor for CaseExpression objects * @param expression a non-null expression * @param when a non-null List containing at least one Expression * @param then a non-null List containing at least one Expression */ public CaseExpression(Expression expression, List when, List then) { setExpression(expression); setWhen(when, then); }
/** * Constructor for CaseExpression objects * @param expression a non-null expression * @param when a non-null List containing at least one Expression * @param then a non-null List containing at least one Expression */ public CaseExpression(Expression expression, List when, List then) { setExpression(expression); setWhen(when, then); }
public void visit(CaseExpression obj) { obj.setExpression(replaceExpression(obj.getExpression())); final int whenCount = obj.getWhenCount(); ArrayList whens = new ArrayList(whenCount); ArrayList thens = new ArrayList(whenCount); for (int i = 0; i < whenCount; i++) { whens.add(replaceExpression(obj.getWhenExpression(i))); thens.add(replaceExpression(obj.getThenExpression(i))); } obj.setWhen(whens, thens); if (obj.getElseExpression() != null) { obj.setElseExpression(replaceExpression(obj.getElseExpression())); } }
public void visit(CaseExpression obj) { obj.setExpression(replaceExpression(obj.getExpression())); final int whenCount = obj.getWhenCount(); ArrayList whens = new ArrayList(whenCount); ArrayList thens = new ArrayList(whenCount); for (int i = 0; i < whenCount; i++) { whens.add(replaceExpression(obj.getWhenExpression(i))); thens.add(replaceExpression(obj.getThenExpression(i))); } obj.setWhen(whens, thens); if (obj.getElseExpression() != null) { obj.setElseExpression(replaceExpression(obj.getElseExpression())); } }
public void visit(CaseExpression obj) { obj.setExpression(replaceExpression(obj.getExpression())); final int whenCount = obj.getWhenCount(); ArrayList whens = new ArrayList(whenCount); ArrayList thens = new ArrayList(whenCount); for (int i = 0; i < whenCount; i++) { whens.add(replaceExpression(obj.getWhenExpression(i))); thens.add(replaceExpression(obj.getThenExpression(i))); } obj.setWhen(whens, thens); if (obj.getElseExpression() != null) { obj.setElseExpression(replaceExpression(obj.getElseExpression())); } }
thens.add(ResolverUtil.convertExpression(obj.getThenExpression(i), thenTypeName, metadata)); obj.setWhen(whens, thens); if (elseExpr != null) { obj.setElseExpression(ResolverUtil.convertExpression(elseExpr, thenTypeName, metadata));
thens.add(ResolverUtil.convertExpression(obj.getThenExpression(i), thenTypeName, metadata)); obj.setWhen(whens, thens); if (elseExpr != null) { obj.setElseExpression(ResolverUtil.convertExpression(elseExpr, thenTypeName, metadata));
caseExpr.setWhen(null, null); fail("Setting WHEN and THEN to null should have failed."); //$NON-NLS-1$ } catch (IllegalArgumentException e) { caseExpr.setWhen(getWhenExpressions(2), null); fail("Setting THEN to null should have failed."); //$NON-NLS-1$ } catch (IllegalArgumentException e) { caseExpr.setWhen(null, getThenExpressions(2)); fail("Setting WHEN to null should have failed."); //$NON-NLS-1$ } catch (IllegalArgumentException e) { caseExpr.setWhen(getWhenExpressions(0), getThenExpressions(0)); fail("Setting WHEN and THEN to empty lists should have failed."); //$NON-NLS-1$ } catch (IllegalArgumentException e) { helpTestThenExpressions(caseExpr, 4); caseExpr.setWhen(TestSearchedCaseExpression.getWhenCriteria(3), getThenExpressions(3)); caseExpr.setWhen(getWhenExpressions(3), TestSearchedCaseExpression.getWhenCriteria(3)); ArrayList whens = new ArrayList(); whens.add(new Constant("abc")); //$NON-NLS-1$ thens.add(new Constant(new Integer(20000))); thens.add(new Constant(new Integer(30000))); caseExpr.setWhen(whens, thens); assertEquals(2, caseExpr.getWhenCount()); assertEquals(new Constant("abc"), caseExpr.getWhenExpression(0)); //$NON-NLS-1$
thens.add(ResolverUtil.convertExpression(obj.getThenExpression(i), thenTypeName, metadata)); obj.setWhen(whens, thens); if (elseExpr != null) { obj.setElseExpression(ResolverUtil.convertExpression(elseExpr, thenTypeName, metadata));