src/: Add commentary to the generated code.
[sod] / doc / clang.tex
index b38dc09..87e8d47 100644 (file)
@@ -902,6 +902,10 @@ Temporary names are represented by objects which implement a simple protocol.
       @<form>^*}
 \end{describe}
 
+\begin{describe}{fun}
+    {format-banner-comment @<stream> @<control> \&rest @<args>}
+\end{describe}
+
 \begin{table}
   \begin{tabular}[C]{ll>{\codeface}l}                              \hlx*{hv}
     \thd{Class name} &
@@ -921,7 +925,9 @@ Temporary names are represented by objects which implement a simple protocol.
     @|call|     & @<func> @|\&rest| @<args>
                                            & @<func>(@<arg>_1,
                                                      $\ldots$,
-                                                     @<arg>_n)  \\ \hlx{vhv}
+                                                     @<arg>_n)  \\ \hlx{v}
+    @|banner|   & @<control> @|\&rest| @<args>
+                                           & /* @<banner> */    \\ \hlx{vhv}
     @|block|    & @<decls> @<body>         & \{ @[@<decls>@] @<body> \}
                                                                 \\ \hlx{v}
     @|if|       & @<cond> @<conseq> @|\&optional| @<alt>
@@ -931,8 +937,12 @@ Temporary names are represented by objects which implement a simple protocol.
                                                                 \\ \hlx{v}
     @|do-while| & @<body> @<cond>          & do @<body> while (@<cond>);
                                                                 \\ \hlx{v}
-    @|function| & @<name> @<type> @<body>  &
-      \vtop{\hbox{\strut @<type>_0 @<name>(@<type>_1 @<arg>_1, $\ldots$,
+    @|function| &
+      \vtop{\hbox{\strut @<name> @<type> @<body>}
+            \hbox{\strut \quad @|\&optional @<banner>|}
+            \hbox{\strut \quad @|\&rest| @<banner-args>}} &
+      \vtop{\hbox{\strut @[/* @<banner> */@]}
+            \hbox{\strut @<type>_0 @<name>(@<type>_1 @<arg>_1, $\ldots$,
                                            @<type>_n @<arg>_n @[, \dots@])}
             \hbox{\strut \quad @<body>}}                        \\ \hlx*{vh}
   \end{tabular}
@@ -962,6 +972,9 @@ Temporary names are represented by objects which implement a simple protocol.
 \begin{describe}{gf}{emit-decls @<codegen> @<decls>}
 \end{describe}
 
+\begin{describe}{fun}{emit-banner @<codegen> @<control> \&rest @<args>}
+\end{describe}
+
 \begin{describe}{gf}{codegen-push @<codegen>}
 \end{describe}