com.exigen.ie.constrainer.impl.IntSetVarImpl Maven / Gradle / Ivy
package com.exigen.ie.constrainer.impl;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;
import com.exigen.ie.constrainer.Constrainer;
import com.exigen.ie.constrainer.Constraint;
import com.exigen.ie.constrainer.EventOfInterest;
import com.exigen.ie.constrainer.Failure;
import com.exigen.ie.constrainer.Goal;
import com.exigen.ie.constrainer.GoalGenerate;
import com.exigen.ie.constrainer.IntBoolVar;
import com.exigen.ie.constrainer.IntExp;
import com.exigen.ie.constrainer.IntExpArray;
import com.exigen.ie.constrainer.IntSetVar;
import com.exigen.ie.constrainer.Observer;
import com.exigen.ie.constrainer.Subject;
import com.exigen.ie.constrainer.UndoImpl;
import com.exigen.ie.tools.Reusable;
import com.exigen.ie.tools.ReusableFactory;
public class IntSetVarImpl extends SubjectImpl implements IntSetVar
{
private IntExpArray _set;
private HashMap _values2index = new HashMap();
private int _unboundsCounter;
private IntSetVarImpl(Constrainer C){
super(C);
}
public IntSetVarImpl(Constrainer C, int[] array, String name)
{
super(C, name);
int size = array.length;
_set = new IntExpArray(C, size);
for (int i=0; i