private int checkNode(BOp bop) { int cnt = 0; for (BOp arg: bop.args()) { cnt += checkNode(arg); } if (bop instanceof ValueExpressionNode) { for (BOp arg: ((ValueExpressionNode)bop).getValueExpression().args()) { cnt+=checkNode(arg); } } if (bop instanceof ConstantNode) { // constant node in AST BigdataValue value = ((ConstantNode)bop).getValue(); if (value instanceof BigdataLiteral && XMLSchema.DATE.equals(((BigdataLiteral)value).getDatatype())) { assertFalse(((BigdataLiteral)value).getIV().isNullIV()); assertTrue(value.getIV() instanceof LiteralExtensionIV); cnt++; } } if (bop instanceof Constant) { // constant in valueExpr IV value = (IV) ((Constant)bop).get(); assertFalse(value.isNullIV()); assertTrue(value instanceof LiteralExtensionIV || value instanceof XSDBooleanIV); cnt++; } return cnt; } }
private int checkNode(BOp bop) { int cnt = 0; for (BOp arg: bop.args()) { cnt += checkNode(arg); } if (bop instanceof ValueExpressionNode) { for (BOp arg: ((ValueExpressionNode)bop).getValueExpression().args()) { cnt+=checkNode(arg); } } if (bop instanceof ConstantNode) { // constant node in AST BigdataValue value = ((ConstantNode)bop).getValue(); if (value instanceof BigdataLiteral && XMLSchema.DATE.equals(((BigdataLiteral)value).getDatatype())) { assertFalse(((BigdataLiteral)value).getIV().isNullIV()); assertTrue(value.getIV() instanceof LiteralExtensionIV); cnt++; } } if (bop instanceof Constant) { // constant in valueExpr IV value = (IV) ((Constant)bop).get(); assertFalse(value.isNullIV()); assertTrue(value instanceof LiteralExtensionIV || value instanceof XSDBooleanIV); cnt++; } return cnt; } }