package models.formulas.meta;
import java.util.HashMap;
import java.util.Map;
import models.algebra.Variable;
import models.formulas.Formula;
import models.terms.RDLTerm;
import models.terms.meta.OrderVariableConstraint;
public abstract class MetaFormula {
public boolean isMatchedBy(Formula formula) {
return isMatchedBy(formula, new HashMap<>(), new HashMap<>());
}
public abstract boolean isMatchedBy(Formula formula, Map<Variable, RDLTerm> binding, Map<Variable, OrderVariableConstraint> orderConstraint);
public abstract String toString();
public abstract boolean equals(Object another);
public abstract int hashCode();
}