/** * Visiteur sur une expression arithmétique. * * @author Xavier Crégut * @version $Revision$ */ public interface VisiteurExpression { /** Visiter un accès à une variable. * @param v l'accès à une variable à visiter */ R visiterAccesVariable(AccesVariable v); /** Visiter une constante. * @param c la constante à visiter */ R visiterConstante(Constante c); /** Visiter une expression binaire. * @param e l'expression binaire à visiter */ R visiterExpressionBinaire(ExpressionBinaire e); /** Visiter l'opérateur binaire addition. * @param a l'opérateur à visiter */ R visiterAddition(Addition a); /** Visiter l'opérateur binaire soustraction. * @param a l'opérateur à visiter */ R visiterSoustraction(Soustraction a); /** Visiter l'opérateur binaire multiplication. * @param m l'opérateur à visiter */ R visiterMultiplication(Multiplication m); /** Visiter une expression unaire. * @param v l'expression unaire à visiter */ R visiterExpressionUnaire(ExpressionUnaire e); /** Visiter un opérateur unaire négation. * @param n l'opérateur unaire à visiter */ R visiterNegation(Negation n); /** Visiter une expression ternaire. * @param e l'expression ternaire à visiter */ R visiterExpressionTernaire(ExpressionTernaire e); /** Visiter un opérateur ternaire let. * @param n l'opérateur ternaire à visiter */ R visiterLet(Let n); }