10 UMLClass 590 60 100 60 Expression -- -- /+evaluer()/ UMLClass 380 200 100 30 Terme UMLClass 870 200 100 30 Op-add UMLClass 280 290 100 30 Facteur UMLClass 770 290 100 50 Op+ -- -- +evaluer():gauche.evaluer() + droite.evaluer() UMLClass 480 290 100 30 Op-mul UMLClass 970 290 100 50 Op- -- -- +evaluer():gauche.evaluer() - droite.evaluer() UMLClass 10 470 130 80 Chiffre -- -c:int <- {0,...,9} -- +evaluer():int UMLClass 170 470 180 80 Variable -- -vMap:Map<key, value> -- +evaluer():char UMLClass 380 470 190 80 Expression parenthesée -- -- +evaluer():exp.evaluer() UMLClass 410 370 100 50 Op* -- -- +evaluer():gauche.evaluer() * droite.evaluer() UMLClass 550 370 100 50 Op\ -- -- +evaluer():gauche.evaluer() / droite.evaluer() Relation 630 110 30 80 lt=<<- 10.0;10.0;10.0;60.0 Relation 420 160 520 60 lt=- 10.0;40.0;10.0;10.0;500.0;10.0;500.0;40.0 Relation 680 80 390 150 lt=<- droite 10.0;10.0;330.0;10.0;330.0;130.0;290.0;130.0 Relation 470 190 420 40 lt=<- gauche 10.0;20.0;400.0;20.0 Relation 420 220 30 60 lt=<<- 10.0;10.0;10.0;40.0 Relation 320 250 230 60 lt=- 10.0;40.0;10.0;10.0;210.0;10.0;210.0;40.0 Relation 370 280 130 40 lt=<- gauche 10.0;20.0;110.0;20.0 Relation 470 210 210 110 lt=<- droite 10.0;10.0;150.0;10.0;150.0;90.0;110.0;90.0 Relation 910 220 30 60 lt=<<- 10.0;10.0;10.0;40.0 Relation 810 250 230 60 lt=- 10.0;40.0;10.0;10.0;210.0;10.0;210.0;40.0 Relation 520 310 30 60 lt=<<- 10.0;10.0;10.0;40.0 Relation 450 340 170 50 lt=- 10.0;30.0;10.0;10.0;150.0;10.0;150.0;30.0 Relation 560 60 580 470 lt=<- exp 130.0;10.0;540.0;10.0;540.0;450.0;10.0;450.0 Relation 60 430 430 60 lt=- 10.0;40.0;10.0;10.0;410.0;10.0;410.0;40.0 Relation 320 310 30 150 lt=<<- 10.0;10.0;10.0;130.0 Relation 250 430 30 60 lt=- 10.0;10.0;10.0;40.0