package aima.core.agent.impl.aprog.simplerule; import aima.core.agent.impl.ObjectWithDynamicAttributes; /** * Implementation of an OR condition. * * @author Ciaran O'Reilly * */ public class ORCondition extends Condition { private Condition left; private Condition right; public ORCondition(Condition leftCon, Condition rightCon) { assert (null != leftCon); assert (null != rightCon); left = leftCon; right = rightCon; } @Override public boolean evaluate(ObjectWithDynamicAttributes p) { return (left.evaluate(p) || right.evaluate(p)); } @Override public String toString() { StringBuilder sb = new StringBuilder(); return sb.append("[").append(left).append(" || ").append(right) .append("]").toString(); } }