public Boolean get(final IBindingSet bset) { final IVariable<?> var = (IVariable<?>) get(0)/* var */; // get binding for the variable. final IConstant<?> asBound = bset.get(var); if (asBound == null) return true; // not yet bound. final IConstant<?> cnst = (IConstant<?>) get(1); final boolean ret = asBound.equals(cnst); return ret; }
public Boolean get(final IBindingSet bset) { final IVariable<?> var = (IVariable<?>) get(0)/* var */; // get binding for the variable. final IConstant<?> asBound = bset.get(var); if (asBound == null) return true; // not yet bound. final IConstant<?> cnst = (IConstant<?>) get(1); final boolean ret = asBound.equals(cnst); return ret; }
/** * Unit test for {@link EQConstant#accept(IBindingSet)} */ public void testAccept () { Var<?> var = Var.var ( "x" ) ; Constant<String> val1 = new Constant<String> ( "1" ) ; Constant<String> val2 = new Constant<String> ( "2" ) ; Constant<Integer> val3 = new Constant<Integer> ( 1 ) ; EQConstant op = new EQConstant ( var, val1 ) ; IBindingSet eq = new ListBindingSet ( new IVariable<?> [] { var }, new IConstant [] { val1 } ) ; IBindingSet ne1 = new ListBindingSet ( new IVariable<?> [] { var }, new IConstant [] { val2 } ) ; IBindingSet ne2 = new ListBindingSet ( new IVariable<?> [] { var }, new IConstant [] { val3 } ) ; IBindingSet nb = new ListBindingSet ( new IVariable<?> [] {}, new IConstant [] {} ) ; assertTrue ( op.get ( eq ) ) ; assertFalse ( op.get ( ne1 ) ) ; assertFalse ( op.get ( ne2 ) ) ; assertTrue ( op.get ( nb ) ) ; } }
/** * Unit test for {@link EQConstant#accept(IBindingSet)} */ public void testAccept () { Var<?> var = Var.var ( "x" ) ; Constant<String> val1 = new Constant<String> ( "1" ) ; Constant<String> val2 = new Constant<String> ( "2" ) ; Constant<Integer> val3 = new Constant<Integer> ( 1 ) ; EQConstant op = new EQConstant ( var, val1 ) ; IBindingSet eq = new ListBindingSet ( new IVariable<?> [] { var }, new IConstant [] { val1 } ) ; IBindingSet ne1 = new ListBindingSet ( new IVariable<?> [] { var }, new IConstant [] { val2 } ) ; IBindingSet ne2 = new ListBindingSet ( new IVariable<?> [] { var }, new IConstant [] { val3 } ) ; IBindingSet nb = new ListBindingSet ( new IVariable<?> [] {}, new IConstant [] {} ) ; assertTrue ( op.get ( eq ) ) ; assertFalse ( op.get ( ne1 ) ) ; assertFalse ( op.get ( ne2 ) ) ; assertTrue ( op.get ( nb ) ) ; } }