package se.chalmers.cs.gf.CFG.Absyn; // Java Package generated by the BNF Converter. public class Rule { public final Fun fun_; public final Profiles profiles_; public final Category category_; public final ListSymbol listsymbol_; public Rule(Fun p1, Profiles p2, Category p3, ListSymbol p4) { fun_ = p1; profiles_ = p2; category_ = p3; listsymbol_ = p4; } public R accept(se.chalmers.cs.gf.CFG.Absyn.Rule.Visitor v, A arg) { return v.visit(this, arg); } public boolean equals(Object o) { if (this == o) return true; if (o instanceof se.chalmers.cs.gf.CFG.Absyn.Rule) { se.chalmers.cs.gf.CFG.Absyn.Rule x = (se.chalmers.cs.gf.CFG.Absyn.Rule)o; return this.fun_.equals(x.fun_) && this.profiles_.equals(x.profiles_) && this.category_.equals(x.category_) && this.listsymbol_.equals(x.listsymbol_); } return false; } public int hashCode() { return 37*(37*(37*(this.fun_.hashCode())+this.profiles_.hashCode())+this.category_.hashCode())+this.listsymbol_.hashCode(); } public interface Visitor { public R visit(se.chalmers.cs.gf.CFG.Absyn.Rule p, A arg); } }