1 16 17 package org.apache.commons.jexl.parser; 18 19 import org.apache.commons.jexl.JexlContext; 20 import org.apache.commons.jexl.util.Coercion; 21 22 28 public class ASTBitwiseAndNode extends SimpleNode { 29 34 public ASTBitwiseAndNode(int id) { 35 super(id); 36 } 37 38 44 public ASTBitwiseAndNode(Parser p, int id) { 45 super(p, id); 46 } 47 48 49 public Object jjtAccept(ParserVisitor visitor, Object data) { 50 return visitor.visit(this, data); 51 } 52 53 54 public Object value(JexlContext context) throws Exception { 55 Object left = ((SimpleNode) jjtGetChild(0)).value(context); 56 Object right = ((SimpleNode) jjtGetChild(1)).value(context); 57 58 Long l = left == null ? new Long (0) : Coercion.coerceLong(left); 59 Long r = right == null ? new Long (0) : Coercion.coerceLong(right); 60 return new Long (l.longValue() & r.longValue()); 61 } 62 } 63 | Popular Tags |