Expression à analyser :

3

Pointeur sur le prochain caractère à lire

+

5

EOF
Expression à analyser :

3

+

5

EOF

État de la pile de productions
avant

Expression
État initial

Pointeur sur le proc...
Expression à analyser :

avant

3

+

5

État de la pile de productions
/

EOF

après

Expression
État initial

Pointeur s...
3

Expression à analyser :

+

5

État de la pile de productions
avant
/
exécution des méthodes pop()

EOF

après

Product...
3

Expression à analyser :

+

5

EOF

État de la pile de productions
avant
/
après
exécution des méthodes pop() et produc...
3

Expression à analyser :

+

5

EOF

État de la pile de productions
avant
/
après
exécution des méthodes pop() et produc...
3

Expression à analyser :

+

5

EOF

État de la pile de productions
avant
/
après
exécution des méthodes pop() et produc...
3

Expression à analyser :

+

5

EOF

État de la pile de productions
avant
/
après
exécution des méthodes pop() et produc...
3

Expression à analyser :

+

5

EOF

État de la pile de productions
avant
/
après
exécution des méthodes pop() et produc...
Expression à analyser :

3

+

5

EOF

État de la pile de productions
avant
/
après
exécution des méthodes pop() et produc...
Upcoming SlideShare
Loading in …5
×

JVM Hardcore - Part 07 - Parsing (Productions stack states)

2,527 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,527
On SlideShare
0
From Embeds
0
Number of Embeds
1,565
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

JVM Hardcore - Part 07 - Parsing (Productions stack states)

  1. 1. Expression à analyser : 3 Pointeur sur le prochain caractère à lire + 5 EOF
  2. 2. Expression à analyser : 3 + 5 EOF État de la pile de productions avant Expression État initial Pointeur sur le prochain caractère à lire Note : la table de productions contient des instances des types indiqués
  3. 3. Expression à analyser : avant 3 + 5 État de la pile de productions / EOF après Expression État initial Pointeur sur le prochain caractère à lire Note : la table de productions contient des instances des types indiqués
  4. 4. 3 Expression à analyser : + 5 État de la pile de productions avant / exécution des méthodes pop() EOF après Production p = pop() 1 Expression État initial Pointeur sur le prochain caractère à lire Note : la table de productions contient des instances des types indiqués
  5. 5. 3 Expression à analyser : + 5 EOF État de la pile de productions avant / après exécution des méthodes pop() et produce() Production p = pop() Digit 1 Expression p.produce() 2 Operator Digit État initial Pointeur sur le prochain caractère à lire Note : la table de productions contient des instances des types indiqués
  6. 6. 3 Expression à analyser : + 5 EOF État de la pile de productions avant / après exécution des méthodes pop() et produce() Production p = pop() Digit 1 Expression État initial p.produce() 2 Operator Digit 3 Valeur retournée : null Pointeur sur le prochain caractère à lire Note : la table de productions contient des instances des types indiqués
  7. 7. 3 Expression à analyser : + 5 EOF État de la pile de productions avant / après exécution des méthodes pop() et produce() Production p = pop() Digit Operator Digit 1 p.produce() 3 Operator 2 Digit X Valeur retournée : EventType.DIGIT X Aucune modification de la pile Pointeur sur le prochain caractère à lire Note : la table de productions contient des instances des types indiqués
  8. 8. 3 Expression à analyser : + 5 EOF État de la pile de productions avant / après exécution des méthodes pop() et produce() Production p = pop() Operator Digit 1 p.produce() 3 2 Digit X Valeur retournée : EventType.OPERATOR X Aucune modification de la pile Pointeur sur le prochain caractère à lire Note : la table de productions contient des instances des types indiqués
  9. 9. 3 Expression à analyser : + 5 EOF État de la pile de productions avant / après exécution des méthodes pop() et produce() Production p = pop() 1 Digit p.produce() 3 2 X Valeur retournée : EventType.DIGIT X Aucune modification de la pile Pointeur sur le prochain caractère à lire Note : la table de productions contient des instances des types indiqués
  10. 10. Expression à analyser : 3 + 5 EOF État de la pile de productions avant / après exécution des méthodes pop() et produce() La pile de productions étant vide, l’analyse est terminée X Aucune modification de la pile Pointeur sur le prochain caractère à lire Note : la table de productions contient des instances des types indiqués

×