doc-src/IsarRef/logics.tex
changeset 21090 e694285770a2
parent 21077 d6c141871b29
child 22291 bfaba62cc92c
equal deleted inserted replaced
21089:cf6defa31209 21090:e694285770a2
   796 
   796 
   797 typeconstructor : nameref;
   797 typeconstructor : nameref;
   798 
   798 
   799 class : nameref;
   799 class : nameref;
   800 
   800 
   801 seri : target | 'SML' ( string | '-' | ()) | 'Haskell' (string | ());
   801 seri : target | 'SML' ( string | '-' ) | 'Haskell' ( 'root:' string ) ? 'string\_classes' ? string;
   802 
   802 
   803 target : 'SML' | 'Haskell';
   803 target : 'SML' | 'Haskell';
   804 
   804 
   805 'code\_const' (const + 'and') \\
   805 'code\_const' (const + 'and') \\
   806   ( ( '(' target ( syntax + 'and' ) ')' ) + );
   806   ( ( '(' target ( syntax + 'and' ) ')' ) + );
   844   In the first case, code is written to the specified file, in the latter
   844   In the first case, code is written to the specified file, in the latter
   845   it is compiled internally in the context of the current ML session.
   845   it is compiled internally in the context of the current ML session.
   846 
   846 
   847   For \emph{Haskell}, a directory name is specified; different modules
   847   For \emph{Haskell}, a directory name is specified; different modules
   848   are serialized to different files in this directory or
   848   are serialized to different files in this directory or
   849   subdirectories, reflecting the module hierarchy.
   849   subdirectories, reflecting the module hierarchy. Additionally
       
   850   a module name prefix may be given using the ``root:'' argument;
       
   851   ``string\_classes'' adds a ``deriving (Read, Show)'' clause
       
   852   to each appropriate datatype declaration.
   850 
   853 
   851 \item [$\isarcmd{code_const}$] associates a list of constants
   854 \item [$\isarcmd{code_const}$] associates a list of constants
   852   with target-specific serializations.
   855   with target-specific serializations.
   853 
   856 
   854 \item [$\isarcmd{code_type}$] associates a list of type constructors
   857 \item [$\isarcmd{code_type}$] associates a list of type constructors