aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc
diff options
context:
space:
mode:
authorGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2010-02-11 13:34:54 +0000
committerGravatar letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7>2010-02-11 13:34:54 +0000
commit7db851616eabbb82ce3608bb3b05c041b5ac3cb3 (patch)
treed28040c816aa00b3fb80e5e53e52dc34d8be6e1d /doc
parentb94a7a24aef33b7ed37ebb215f9ca18f9096eece (diff)
Documentation of the ! annotation for functor application
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12746 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'doc')
-rw-r--r--doc/refman/RefMan-mod.tex12
1 files changed, 10 insertions, 2 deletions
diff --git a/doc/refman/RefMan-mod.tex b/doc/refman/RefMan-mod.tex
index 40fd6f110..eff98d588 100644
--- a/doc/refman/RefMan-mod.tex
+++ b/doc/refman/RefMan-mod.tex
@@ -12,6 +12,7 @@ together, as well as a mean of massive abstraction.
& $|$ & {\modtype} \texttt{ with Definition }{\qualid} := {\term} \\
& $|$ & {\modtype} \texttt{ with Module }{\qualid} := {\qualid} \\
& $|$ & {\qualid} \nelist{\qualid}{}\\
+ & $|$ & $!${\qualid} \nelist{\qualid}{}\\
&&\\
{\onemodbinding} & ::= & {\tt ( [Import|Export] \nelist{\ident}{} : {\modtype} )}\\
@@ -20,12 +21,17 @@ together, as well as a mean of massive abstraction.
{\modbindings} & ::= & \nelist{\onemodbinding}{}\\
&&\\
-{\modexpr} & ::= & \nelist{\qualid}{}
+{\modexpr} & ::= & \nelist{\qualid}{} \\
+ & $|$ & $!$\nelist{\qualid}{}
\end{tabular}
\end{centerframe}
\caption{Syntax of modules}
\end{figure}
+In the syntax of module application, the $!$ prefix indicates that
+any {\tt Inline} directive in the type of the functor arguments
+will be ignored (see \ref{Inline} below).
+
\subsection{\tt Module {\ident}
\comindex{Module}}
@@ -144,6 +150,7 @@ This command is used to start an interactive module type {\ident}.
\end{Variants}
\subsubsection{Reserved commands inside an interactive module type:
\comindex{Include}\comindex{Inline}}
+\label{Inline}
\begin{enumerate}
\item {\tt Include {\module}}
@@ -155,7 +162,8 @@ is a shortcut for {\tt Include {\module$_1$}} $\ldots$ {\tt Include {\module$_n
\item {\tt {\declarationkeyword} Inline {\assums} }
- This declaration will be automatically unfolded at functor application.
+ This declaration will be automatically unfolded at functor
+ application, except when this functor application is prefixed by a $!$ annotation.
\end{enumerate}
\subsection{\tt End {\ident}
\comindex{End}}