package aima.core.logic.fol.parsing; import aima.core.logic.fol.parsing.ast.ConnectedSentence; import aima.core.logic.fol.parsing.ast.Constant; import aima.core.logic.fol.parsing.ast.Function; import aima.core.logic.fol.parsing.ast.NotSentence; import aima.core.logic.fol.parsing.ast.Predicate; import aima.core.logic.fol.parsing.ast.QuantifiedSentence; import aima.core.logic.fol.parsing.ast.TermEquality; import aima.core.logic.fol.parsing.ast.Variable; /** * @author Ravi Mohan * */ public interface FOLVisitor { public Object visitPredicate(Predicate p, Object arg); public Object visitTermEquality(TermEquality equality, Object arg); public Object visitVariable(Variable variable, Object arg); public Object visitConstant(Constant constant, Object arg); public Object visitFunction(Function function, Object arg); public Object visitNotSentence(NotSentence sentence, Object arg); public Object visitConnectedSentence(ConnectedSentence sentence, Object arg); public Object visitQuantifiedSentence(QuantifiedSentence sentence, Object arg); }