ASA.txt 623 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /*
  2. Raiz(ASA)
  3. |
  4. |
  5. DeclaraçõesGlobais + Funções
  6. DeclaracaoGlobal
  7. |
  8. |
  9. const? TIPO ID (= EAnd)?
  10. Função
  11. |
  12. |
  13. Declaracao => TIPO ID (= EAnd)?
  14. Attribuição => ID = EAnd
  15. IF, WHILE, SWITCH, FuncCall, RETURN
  16. EAnd
  17. |
  18. |
  19. EOR ( 'and' EAnd)?
  20. EOR => ENot ('or' EAnd)?
  21. ENot => 'not'? ER
  22. ER => E ((>=, <=, ==, >, <) E)?
  23. E => factor ((+, -) E)?
  24. factor=> term ((*, /, %) factor)?
  25. term => literal || arrayAccess || FuncCall || ID || '('EAnd')'
  26. arrayAccess
  27. |
  28. |
  29. ID'['E']'('['E']')*
  30. FuncCall
  31. |
  32. |
  33. ID'('p.a')'
  34. p.a => E (, p.a)?
  35. **/