/**
* Copyright (c) 2009-2011, The HATS Consortium. All rights reserved.
* This file is licensed under the terms of the Modified BSD License.
*/
package deadlock.analyser.factory;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import com.gzoumix.semisolver.term.Term;
import com.gzoumix.semisolver.term.TermVariable;
import com.gzoumix.semisolver.term.Variable;
public class FunctionInterface extends GenericStructuredTerm {
public final static String name = "functionInterface";
public FunctionInterface(List<Term> l) { super(name, l); }
public FunctionInterface(List<Term> l, Term rreturn) {
super(name, new LinkedList<Term>());
this.subterms.addAll(l);
this.subterms.add(rreturn);
}
// public FunctionInterface generalize(Factory df) {
// Set<TermVariable> s = this.fvTerm();
// HashMap<Variable, TermVariable> map = new HashMap<>();
//
// for(TermVariable v: s)
// map.put(v.getVariable(), df.freshTermVariableFromTerm(v));
//
// FunctionInterface res = df.clone(this);
// for(Map.Entry<Variable, TermVariable>entry : map.entrySet()) {
// res.substitute(entry.getKey(), entry.getValue()));
//
// }
// return res;
// }
}