block.syn 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. \begin{diagram}{Blocks}{blocks}
  2. \begin{mysyntdiag}
  3. \synt{block} \synt{declaration\ part} \synt{statement\ part}
  4. \end{mysyntdiag}
  5. \begin{mysyntdiag}
  6. \synt{declaration\ part}
  7. \begin{rep}[b]
  8. \begin{stack}\\
  9. \synt{label\ declaration\ part}\\
  10. \synt{constant\ declaration\ part}\\
  11. \synt{resourcestring\ declaration\ part}\\
  12. \synt{type\ declaration\ part}\\
  13. \synt{variable\ declaration\ part}\\
  14. \synt{thread variable\ declaration\ part}\\
  15. \synt{procedure/function\ declaration\ part}
  16. \end{stack}
  17. \end{rep}
  18. \end{mysyntdiag}
  19. \begin{mysyntdiag}
  20. \synt{label\ declaration\ part}
  21. \lit*{label}
  22. \begin{rep}[b]
  23. \synt{label}\\
  24. \lit* ,
  25. \end{rep}
  26. \lit* ;
  27. \end{mysyntdiag}
  28. \begin{mysyntdiag}
  29. \synt{constant\ declaration\ part}
  30. \lit*{const}
  31. \begin{rep}[b]
  32. \begin{stack}
  33. \synt{constant\ declaration}\\
  34. \synt{typed\ constant\ declaration}
  35. \end{stack}
  36. \end{rep}
  37. \end{mysyntdiag}
  38. \begin{mysyntdiag}
  39. \synt{resourcestring\ declaration\ part}
  40. \lit*{resourcestring}
  41. \begin{rep}[b]
  42. \synt{string\ constant\ declaration}\\
  43. \end{rep}
  44. \end{mysyntdiag}
  45. \begin{mysyntdiag}
  46. \synt{type\ declaration\ part}
  47. \lit*{type}
  48. \begin{rep}[b]
  49. \synt{type\ declaration}\\
  50. \end{rep}
  51. \end{mysyntdiag}
  52. \begin{mysyntdiag}
  53. \synt{variable\ declaration\ part}
  54. \lit*{var}
  55. \begin{rep}[b]
  56. \synt{variable\ declaration}\\
  57. \end{rep}
  58. \end{mysyntdiag}
  59. \begin{mysyntdiag}
  60. \synt{thread variable\ declaration\ part}
  61. \lit*{threadvar}
  62. \begin{rep}[b]
  63. \synt{variable\ declaration}\\
  64. \end{rep}
  65. \end{mysyntdiag}
  66. \begin{mysyntdiag}
  67. \synt{procedure/function\ declaration\ part}
  68. \begin{rep}[b]
  69. \begin{stack}
  70. \synt{procedure\ declaration}\\
  71. \synt{function\ declaration}\\
  72. \synt{constructor\ declaration}\\
  73. \synt{destructor\ declaration}\\
  74. \end{stack}
  75. \end{rep}
  76. \end{mysyntdiag}
  77. \begin{mysyntdiag}
  78. \synt{statement\ part}
  79. \synt{compound\ statement}
  80. \end{mysyntdiag}
  81. \end{diagram}