it.unibo.tuprolog.parser.PrologParserVisitor Maven / Gradle / Ivy
// Generated from PrologParser.g4 by ANTLR 4.9.2
package it.unibo.tuprolog.parser;
import java.util.*;
import it.unibo.tuprolog.parser.dynamic.*;
import static it.unibo.tuprolog.parser.dynamic.Associativity.*;
import org.antlr.v4.runtime.RuleContext;
import org.antlr.v4.runtime.tree.ParseTreeVisitor;
/**
* This interface defines a complete generic visitor for a parse tree produced
* by {@link PrologParser}.
*
* @param The return type of the visit operation. Use {@link Void} for
* operations with no return type.
*/
public interface PrologParserVisitor extends ParseTreeVisitor {
/**
* Visit a parse tree produced by {@link PrologParser#singletonTerm}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitSingletonTerm(PrologParser.SingletonTermContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#singletonExpression}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitSingletonExpression(PrologParser.SingletonExpressionContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#theory}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTheory(PrologParser.TheoryContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#optClause}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitOptClause(PrologParser.OptClauseContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#clause}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitClause(PrologParser.ClauseContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#optExpression}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitOptExpression(PrologParser.OptExpressionContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#expression}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExpression(PrologParser.ExpressionContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#outer}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitOuter(PrologParser.OuterContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#op}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitOp(PrologParser.OpContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#term}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTerm(PrologParser.TermContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#number}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitNumber(PrologParser.NumberContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#integer}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitInteger(PrologParser.IntegerContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#real}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitReal(PrologParser.RealContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#variable}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitVariable(PrologParser.VariableContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#structure}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStructure(PrologParser.StructureContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#list}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitList(PrologParser.ListContext ctx);
/**
* Visit a parse tree produced by {@link PrologParser#set}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitSet(PrologParser.SetContext ctx);
}