
jadex.rules.rulesystem.rete.constraints.OrConstraintEvaluator Maven / Gradle / Ivy
package jadex.rules.rulesystem.rete.constraints;
import java.util.Arrays;
import jadex.commons.SUtil;
import jadex.rules.rulesystem.rete.Tuple;
import jadex.rules.rulesystem.rete.extractors.AttributeSet;
import jadex.rules.state.IOAVState;
import jadex.rules.state.OAVAttributeType;
/**
* A constraint evaluator for or-connected constraints.
*/
public class OrConstraintEvaluator implements IConstraintEvaluator
{
//-------- attributes --------
/** The constraint evaluator. */
protected final IConstraintEvaluator[] evaluators;
//-------- constructors --------
/**
* Create an OR constraint evaluator.
*/
public OrConstraintEvaluator(IConstraintEvaluator[] evaluators)
{
this.evaluators = evaluators;
}
//-------- methods --------
/**
* Evaluate the constraints given the right object, left tuple
* (null for alpha nodes) and the state.
* @param right The right input object.
* @param left The left input tuple.
* @param state The working memory.
*/
public boolean evaluate(Object right, Tuple left, IOAVState state)
{
boolean ret = false;
//IConstraintEvaluator[] evals = evaluators;
for(int i=0; !ret && evaluators!=null && i
© 2015 - 2025 Weber Informatics LLC | Privacy Policy