1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
\begin{diagram}{Properties}{properties}
\begin{mysyntdiag}
\synt{property\ definition}
\synt{identifier} \begin{stack}\\ \synt{property\ interface} \end{stack}
\synt{property\ specifiers}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{property\ interface}
\begin{stack}\\ \synt{property\ parameter\ list}\end{stack} \lit*: \synt{type\ identifier}
\begin{stack}\\
\lit*{index} \synt{integer constant}
\end{stack}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{property\ parameter\ list} \lit*[
\begin{rep}[b] \synt{parameter\ declaration} \\ \lit; \end{rep}
\lit*]
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{property\ specifiers}
\begin{stack}\\ \synt{read\ specifier} \end{stack}
\begin{stack}\\ \synt{write\ specifier} \end{stack}
\begin{stack}\\ \synt{default\ specifier} \end{stack}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{read\ specifier} \lit*{read} \synt{field\ or\ function}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{write\ specifier} \lit*{write} \synt{field\ or\ procedure}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{default\ specifier}
\begin{stack}
\lit*{default} \begin{stack}\\ \synt{constant} \end{stack} \\
\lit*{nodefault}
\end{stack}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{field\ or\ procedure}
\begin{stack}
\synt{field\ identifier} \\
\synt{procedure\ identifier}
\end{stack}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{field\ or\ function}
\begin{stack}
\synt{field\ identifier} \\
\synt{function\ identifier}
\end{stack}
\end{mysyntdiag}
\end{diagram}
|