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 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
\begin{diagram}{Class types}{classtype}
\begin{mysyntdiag}
\begin{stack}\\ \lit*{packed} \end{stack}
\lit*{class}
\begin{stack}\\ heritage \end{stack}
\begin{stack}\\
\begin{rep}[b]
\synt{component\ list} \\
% \synt{class\ visibility\ specifier}
\end{rep}
\end{stack}
\lit*{end}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{heritage} \lit*( \synt{class\ type\ identifier} \begin{stack}\\ \synt{implemented\ interfaces} \end{stack} \lit* )
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{implemented\ interfaces}
\begin{rep}[b]
\lit{,} \synt{interface\ identifier}\\
\end{rep}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{component\ list}
\begin{stack}\\ \synt {visibility\ specifier} \end{stack}
\begin{stack}\\ \begin{rep}[b] \synt{field\ definition} \\ \end{rep} \end{stack}
\begin{stack}\\
\begin{rep}[b]
\begin{stack}
\synt{method\ definition} \\
\synt{property\ definition}
\end{stack} \\
\end{rep}
\end{stack}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{field\ definition} \synt{identifier\ list} \lit*: \synt{type} \lit*;
\begin{stack}\\
\lit*{static ;}
\end{stack}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{method\ definition}
\begin{stack}
\begin{stack}\\
\lit*{class}
\end{stack}
\begin{stack}
\synt{function\ header} \\
\synt{procedure\ header}
\end{stack} \\
\synt{constructor\ header} \\
\synt{desctuctor\ header}
\end{stack}
\lit*;
\begin{stack}\\
\begin{stack}
\begin{stack} \lit*{virtual} \\ \lit*{dynamic} \end{stack}
\begin{stack}\\ \lit*; \lit*{abstract} \end{stack} \\
\lit*{override} \\
\lit*{message}
\begin{stack} \synt{integer\ constant} \\
\synt{string\ constant} \end{stack}
\end{stack}
\lit*;
\end{stack}
\begin{stack}\\ \synt{call\ modifiers} \lit*; \end{stack}
\end{mysyntdiag}
\begin{mysyntdiag}
\synt{class\ visibility\ specifier}
\begin{stack}
\lit*{private}\\
\lit*{protected}\\
\lit*{public}\\
\lit*{published}
\end{stack}
\end{mysyntdiag}
\end{diagram}
|