package org.eclipse.viatra.solver.data.query.building; import java.util.Collection; import java.util.Iterator; import java.util.Map; import java.util.Set; public interface DNFAtom { void unifyVariables(Map variables); static Variable unifyVariables(Map unifiedVariables, Variable variable) { if(variable != null) { if(variable.isNamed() && unifiedVariables.containsKey(variable.getName())) { return unifiedVariables.get(variable.getName()); } return variable; } else { return null; } } void collectAllVariables(Set variables); static void addToCollection(Set variables, Variable variable) { if(variable != null) { variables.add(variable); } } static void addToCollection(Set variables, Collection variableCollection) { Iterator iterator = variableCollection.iterator(); while(iterator.hasNext()) { Variable variable = iterator.next(); addToCollection(variables, variable); } } }