diff --git a/src/sa/Sc2sa.java b/src/sa/Sc2sa.java index d9a301716a6b92a4c028a3de98a295e3ed454d04..b24fce2bd2f3ad7e18b320a1e989c82ad0f9e989 100644 --- a/src/sa/Sc2sa.java +++ b/src/sa/Sc2sa.java @@ -62,7 +62,9 @@ public class Sc2sa extends DepthFirstAdapter @Override public void caseAExp1Exp(AExp1Exp node) { + inAExp1Exp(node); node.getExp1().apply(this); + outAExp1Exp(node); } @Override @@ -80,7 +82,9 @@ public class Sc2sa extends DepthFirstAdapter @Override public void caseAExp2Exp1(AExp2Exp1 node) { + inAExp2Exp1(node); node.getExp2().apply(this); + outAExp2Exp1(node); } @Override @@ -111,7 +115,9 @@ public class Sc2sa extends DepthFirstAdapter @Override public void caseAExp3Exp2(AExp3Exp2 node) { + inAExp3Exp2(node); node.getExp3().apply(this); + outAExp3Exp2(node); } @Override @@ -143,7 +149,9 @@ public class Sc2sa extends DepthFirstAdapter @Override public void caseAExp4Exp3(AExp4Exp3 node) { + inAExp4Exp3(node); node.getExp4().apply(this); + outAExp4Exp3(node); } @Override @@ -174,7 +182,9 @@ public class Sc2sa extends DepthFirstAdapter @Override public void caseAExp5Exp4(AExp5Exp4 node) { + inAExp5Exp4(node); node.getExp5().apply(this); + outAExp5Exp4(node); } @Override @@ -189,7 +199,9 @@ public class Sc2sa extends DepthFirstAdapter @Override public void caseAExp6Exp5(AExp6Exp5 node) { + inAExp6Exp5(node); node.getExp6().apply(this); + outAExp6Exp5(node); } @Override @@ -205,6 +217,7 @@ public class Sc2sa extends DepthFirstAdapter node.getDpar().apply(this); op3 = (SaExp) this.returnValue; this.returnValue = new SaExp(op1,op2,op3); + outAParenthesisExp6(node); } @@ -219,187 +232,236 @@ public class Sc2sa extends DepthFirstAdapter @Override public void caseAVraiExp6(AVraiExp6 node) { - super.caseAVraiExp6(node); + inAVraiExp6(node); + outAVraiExp6(node); } @Override public void caseAFauxExp6(AFauxExp6 node) { - super.caseAFauxExp6(node); + inAFauxExp6(node); + outAFauxExp6(node); } @Override public void caseAAfExp6(AAfExp6 node) { - super.caseAAfExp6(node); + inAAfExp6(node); + outAAfExp6(node); } @Override public void caseAVarExp6(AVarExp6 node) { - super.caseAVarExp6(node); + inAVarExp6(node); + outAVarExp6(node); } @Override public void caseALireExp6(ALireExp6 node) { - super.caseALireExp6(node); + inALireExp6(node); + outALireExp6(node); } @Override public void caseAAffectationIns(AAffectationIns node) { - super.caseAAffectationIns(node); + inAAffectationIns(node); + outAAffectationIns(node); } @Override public void caseAFairetantqueIns(AFairetantqueIns node) { - super.caseAFairetantqueIns(node); + inAFairetantqueIns(node); + outAFairetantqueIns(node); } @Override public void caseAFonctionIns(AFonctionIns node) { - super.caseAFonctionIns(node); + inAFonctionIns(node); + outAFonctionIns(node); } @Override public void caseASialorsIns(ASialorsIns node) { - super.caseASialorsIns(node); + inASialorsIns(node); + outASialorsIns(node); } @Override public void caseASisinonIns(ASisinonIns node) { - super.caseASisinonIns(node); + inASisinonIns(node); + outASisinonIns(node); } @Override public void caseARetourIns(ARetourIns node) { - super.caseARetourIns(node); + inARetourIns(node); + outARetourIns(node); } @Override public void caseAEcrireIns(AEcrireIns node) { - super.caseAEcrireIns(node); + inAEcrireIns(node); + outAEcrireIns(node); } @Override public void caseABlocIns(ABlocIns node) { - super.caseABlocIns(node); + inABlocIns(node); + outABlocIns(node); } @Override public void caseAAccoladesBloc(AAccoladesBloc node) { - super.caseAAccoladesBloc(node); + inAAccoladesBloc(node); + outAAccoladesBloc(node); } @Override public void caseALinsLins(ALinsLins node) { - super.caseALinsLins(node); + inALinsLins(node); + outALinsLins(node); } @Override public void caseAEpsilonLins(AEpsilonLins node) { - super.caseAEpsilonLins(node); + inAEpsilonLins(node); + outAEpsilonLins(node); } @Override public void caseALexp2Lexp(ALexp2Lexp node) { - super.caseALexp2Lexp(node); + inALexp2Lexp(node); + outALexp2Lexp(node); } @Override public void caseAEpsilonLexp(AEpsilonLexp node) { - super.caseAEpsilonLexp(node); + inAEpsilonLexp(node); + outAEpsilonLexp(node); } @Override public void caseAVirguleLexp2(AVirguleLexp2 node) { - super.caseAVirguleLexp2(node); + inAVirguleLexp2(node); + outAVirguleLexp2(node); } @Override public void caseAEpsilonLexp2(AEpsilonLexp2 node) { - super.caseAEpsilonLexp2(node); + inAEpsilonLexp2(node); + outAEpsilonLexp2(node); } @Override public void caseAAfAf(AAfAf node) { - super.caseAAfAf(node); + inAAfAf(node); + outAAfAf(node); } @Override public void caseAIdVar(AIdVar node) { - super.caseAIdVar(node); + String id = ""; + inAIdVar(node); + id = node.getId().getText(); + this.returnValue = new SaId + outAIdVar(node); } @Override public void caseACrochetsVar(ACrochetsVar node) { - super.caseACrochetsVar(node); + inACrochetsVar(node); + outACrochetsVar(node); } @Override public void caseABooleanType(ABooleanType node) { - super.caseABooleanType(node); + inABooleanType(node); + this.returnType = Type.BOOL; + outABooleanType(node); } @Override public void caseAIntType(AIntType node) { - super.caseAIntType(node); + inAIntType(node); + this.returnType = Type.ENTIER; + outAIntType(node); } @Override public void caseATypeTypeopt(ATypeTypeopt node) { - super.caseATypeTypeopt(node); + inATypeTypeopt(node); + outATypeTypeopt(node); } @Override public void caseAEpsilonTypeopt(AEpsilonTypeopt node) { - super.caseAEpsilonTypeopt(node); + inAEpsilonTypeopt(node); + outAEpsilonTypeopt(node); } @Override public void caseAVarDecvar(AVarDecvar node) { - super.caseAVarDecvar(node); + String nomVariable = null; + Type typeVariable; + inAVarDecvar(node); + node.getType().apply(this); + typeVariable = this.returnType; + nomVariable = node.getId().getText(); + this.returnValue = new SaDecVarSimple(nomVariable, typeVariable); + outAVarDecvar(node); + } @Override public void caseATableauDecvar(ATableauDecvar node) { - super.caseATableauDecvar(node); + inATableauDecvar(node); + outATableauDecvar(node); } @Override public void caseAFonctionDecfonc(AFonctionDecfonc node) { - super.caseAFonctionDecfonc(node); + inAFonctionDecfonc(node); + outAFonctionDecfonc(node); } @Override public void caseAListedecvarLdecvar(AListedecvarLdecvar node) { - super.caseAListedecvarLdecvar(node); + inAListedecvarLdecvar(node); + outAListedecvarLdecvar(node); } @Override public void caseAEpsilonLdecvar(AEpsilonLdecvar node) { - super.caseAEpsilonLdecvar(node); + inAEpsilonLdecvar(node); + outAEpsilonLdecvar(node); } @Override public void caseAListedecvar2Ldecvar2(AListedecvar2Ldecvar2 node) { - super.caseAListedecvar2Ldecvar2(node); + inAListedecvar2Ldecvar2(node); + outAListedecvar2Ldecvar2(node); } @Override public void caseAEpsilonLdecvar2(AEpsilonLdecvar2 node) { - super.caseAEpsilonLdecvar2(node); + inAEpsilonLdecvar2(node); + outAEpsilonLdecvar2(node); } @Override public void caseAListedecfoncLdecfonc(AListedecfoncLdecfonc node) { - super.caseAListedecfoncLdecfonc(node); + inAListedecfoncLdecfonc(node); + outAListedecfoncLdecfonc(node); } @Override public void caseAEpsilonLdecfonc(AEpsilonLdecfonc node) { - super.caseAEpsilonLdecfonc(node); + inAEpsilonLdecfonc(node); + outAEpsilonLdecfonc(node); } @Override public void caseAEpsilon(AEpsilon node) { - super.caseAEpsilon(node); + inAEpsilon(node); + outAEpsilon(node); } }