# HG changeset patch # User bulwahn # Date 1319188635 -7200 # Node ID eb56e1774c267b6eaaa5c43ad11a79e783861e6e # Parent d85a2fdc586c655eca2894918eae61c9747cd4e5 updating documentation: code_inline -> code_unfold; added documentation about attribute code_unfold_post diff -r d85a2fdc586c -r eb56e1774c26 doc-src/IsarRef/Thy/HOL_Specific.thy --- a/doc-src/IsarRef/Thy/HOL_Specific.thy Fri Oct 21 11:17:14 2011 +0200 +++ b/doc-src/IsarRef/Thy/HOL_Specific.thy Fri Oct 21 11:17:15 2011 +0200 @@ -1744,8 +1744,9 @@ @{command_def (HOL) "code_abort"} & : & @{text "theory \ theory"} \\ @{command_def (HOL) "code_datatype"} & : & @{text "theory \ theory"} \\ @{command_def (HOL) "print_codesetup"}@{text "\<^sup>*"} & : & @{text "context \"} \\ - @{attribute_def (HOL) code_inline} & : & @{text attribute} \\ + @{attribute_def (HOL) code_unfold} & : & @{text attribute} \\ @{attribute_def (HOL) code_post} & : & @{text attribute} \\ + @{attribute_def (HOL) code_unfold_post} & : & @{text attribute} \\ @{command_def (HOL) "print_codeproc"}@{text "\<^sup>*"} & : & @{text "context \"} \\ @{command_def (HOL) "code_thms"}@{text "\<^sup>*"} & : & @{text "context \"} \\ @{command_def (HOL) "code_deps"}@{text "\<^sup>*"} & : & @{text "context \"} \\ @@ -1790,12 +1791,15 @@ @@{command (HOL) code_datatype} ( const + ) ; - @@{attribute (HOL) code_inline} ( 'del' ) ? + @@{attribute (HOL) code_unfold} ( 'del' ) ? ; @@{attribute (HOL) code_post} ( 'del' ) ? ; + @@{attribute (HOL) code_unfold_post} + ; + @@{command (HOL) code_thms} ( constexpr + ) ? ; @@ -1887,14 +1891,18 @@ \item @{command (HOL) "print_codesetup"} gives an overview on selected code equations and code generator datatypes. - \item @{attribute (HOL) code_inline} declares (or with option - ``@{text "del"}'' removes) inlining theorems which are applied as + \item @{attribute (HOL) code_unfold} declares (or with option + ``@{text "del"}'' removes) theorems which are applied as rewrite rules to any code equation during preprocessing. \item @{attribute (HOL) code_post} declares (or with option ``@{text "del"}'' removes) theorems which are applied as rewrite rules to any result of an evaluation. + \item @{attribute (HOL) code_unfold_post} declares equations which are + applied as rewrite rules to any code equation during preprocessing, + and symmetrically to any result of an evaluation. + \item @{command (HOL) "print_codeproc"} prints the setup of the code generator preprocessor. diff -r d85a2fdc586c -r eb56e1774c26 doc-src/IsarRef/Thy/document/HOL_Specific.tex --- a/doc-src/IsarRef/Thy/document/HOL_Specific.tex Fri Oct 21 11:17:14 2011 +0200 +++ b/doc-src/IsarRef/Thy/document/HOL_Specific.tex Fri Oct 21 11:17:15 2011 +0200 @@ -2543,8 +2543,9 @@ \indexdef{HOL}{command}{code\_abort}\hypertarget{command.HOL.code-abort}{\hyperlink{command.HOL.code-abort}{\mbox{\isa{\isacommand{code{\isaliteral{5F}{\isacharunderscore}}abort}}}}} & : & \isa{{\isaliteral{22}{\isachardoublequote}}theory\ {\isaliteral{5C3C72696768746172726F773E}{\isasymrightarrow}}\ theory{\isaliteral{22}{\isachardoublequote}}} \\ \indexdef{HOL}{command}{code\_datatype}\hypertarget{command.HOL.code-datatype}{\hyperlink{command.HOL.code-datatype}{\mbox{\isa{\isacommand{code{\isaliteral{5F}{\isacharunderscore}}datatype}}}}} & : & \isa{{\isaliteral{22}{\isachardoublequote}}theory\ {\isaliteral{5C3C72696768746172726F773E}{\isasymrightarrow}}\ theory{\isaliteral{22}{\isachardoublequote}}} \\ \indexdef{HOL}{command}{print\_codesetup}\hypertarget{command.HOL.print-codesetup}{\hyperlink{command.HOL.print-codesetup}{\mbox{\isa{\isacommand{print{\isaliteral{5F}{\isacharunderscore}}codesetup}}}}}\isa{{\isaliteral{22}{\isachardoublequote}}\isaliteral{5C3C5E7375703E}{}\isactrlsup {\isaliteral{2A}{\isacharasterisk}}{\isaliteral{22}{\isachardoublequote}}} & : & \isa{{\isaliteral{22}{\isachardoublequote}}context\ {\isaliteral{5C3C72696768746172726F773E}{\isasymrightarrow}}{\isaliteral{22}{\isachardoublequote}}} \\ - \indexdef{HOL}{attribute}{code\_inline}\hypertarget{attribute.HOL.code-inline}{\hyperlink{attribute.HOL.code-inline}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}inline}}}} & : & \isa{attribute} \\ + \indexdef{HOL}{attribute}{code\_unfold}\hypertarget{attribute.HOL.code-unfold}{\hyperlink{attribute.HOL.code-unfold}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}unfold}}}} & : & \isa{attribute} \\ \indexdef{HOL}{attribute}{code\_post}\hypertarget{attribute.HOL.code-post}{\hyperlink{attribute.HOL.code-post}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}post}}}} & : & \isa{attribute} \\ + \indexdef{HOL}{attribute}{code\_unfold\_post}\hypertarget{attribute.HOL.code-unfold-post}{\hyperlink{attribute.HOL.code-unfold-post}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}unfold{\isaliteral{5F}{\isacharunderscore}}post}}}} & : & \isa{attribute} \\ \indexdef{HOL}{command}{print\_codeproc}\hypertarget{command.HOL.print-codeproc}{\hyperlink{command.HOL.print-codeproc}{\mbox{\isa{\isacommand{print{\isaliteral{5F}{\isacharunderscore}}codeproc}}}}}\isa{{\isaliteral{22}{\isachardoublequote}}\isaliteral{5C3C5E7375703E}{}\isactrlsup {\isaliteral{2A}{\isacharasterisk}}{\isaliteral{22}{\isachardoublequote}}} & : & \isa{{\isaliteral{22}{\isachardoublequote}}context\ {\isaliteral{5C3C72696768746172726F773E}{\isasymrightarrow}}{\isaliteral{22}{\isachardoublequote}}} \\ \indexdef{HOL}{command}{code\_thms}\hypertarget{command.HOL.code-thms}{\hyperlink{command.HOL.code-thms}{\mbox{\isa{\isacommand{code{\isaliteral{5F}{\isacharunderscore}}thms}}}}}\isa{{\isaliteral{22}{\isachardoublequote}}\isaliteral{5C3C5E7375703E}{}\isactrlsup {\isaliteral{2A}{\isacharasterisk}}{\isaliteral{22}{\isachardoublequote}}} & : & \isa{{\isaliteral{22}{\isachardoublequote}}context\ {\isaliteral{5C3C72696768746172726F773E}{\isasymrightarrow}}{\isaliteral{22}{\isachardoublequote}}} \\ \indexdef{HOL}{command}{code\_deps}\hypertarget{command.HOL.code-deps}{\hyperlink{command.HOL.code-deps}{\mbox{\isa{\isacommand{code{\isaliteral{5F}{\isacharunderscore}}deps}}}}}\isa{{\isaliteral{22}{\isachardoublequote}}\isaliteral{5C3C5E7375703E}{}\isactrlsup {\isaliteral{2A}{\isacharasterisk}}{\isaliteral{22}{\isachardoublequote}}} & : & \isa{{\isaliteral{22}{\isachardoublequote}}context\ {\isaliteral{5C3C72696768746172726F773E}{\isasymrightarrow}}{\isaliteral{22}{\isachardoublequote}}} \\ @@ -2654,7 +2655,7 @@ \rail@endplus \rail@end \rail@begin{2}{} -\rail@term{\hyperlink{attribute.HOL.code-inline}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}inline}}}}[] +\rail@term{\hyperlink{attribute.HOL.code-unfold}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}unfold}}}}[] \rail@bar \rail@nextbar{1} \rail@term{\isa{del}}[] @@ -2667,6 +2668,9 @@ \rail@term{\isa{del}}[] \rail@endbar \rail@end +\rail@begin{1}{} +\rail@term{\hyperlink{attribute.HOL.code-unfold-post}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}unfold{\isaliteral{5F}{\isacharunderscore}}post}}}}[] +\rail@end \rail@begin{3}{} \rail@term{\hyperlink{command.HOL.code-thms}{\mbox{\isa{\isacommand{code{\isaliteral{5F}{\isacharunderscore}}thms}}}}}[] \rail@bar @@ -2919,13 +2923,17 @@ \item \hyperlink{command.HOL.print-codesetup}{\mbox{\isa{\isacommand{print{\isaliteral{5F}{\isacharunderscore}}codesetup}}}} gives an overview on selected code equations and code generator datatypes. - \item \hyperlink{attribute.HOL.code-inline}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}inline}}} declares (or with option - ``\isa{{\isaliteral{22}{\isachardoublequote}}del{\isaliteral{22}{\isachardoublequote}}}'' removes) inlining theorems which are applied as + \item \hyperlink{attribute.HOL.code-unfold}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}unfold}}} declares (or with option + ``\isa{{\isaliteral{22}{\isachardoublequote}}del{\isaliteral{22}{\isachardoublequote}}}'' removes) theorems which are applied as rewrite rules to any code equation during preprocessing. \item \hyperlink{attribute.HOL.code-post}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}post}}} declares (or with option ``\isa{{\isaliteral{22}{\isachardoublequote}}del{\isaliteral{22}{\isachardoublequote}}}'' removes) theorems which are applied as rewrite rules to any result of an evaluation. + \item \hyperlink{attribute.HOL.code-unfold-post}{\mbox{\isa{code{\isaliteral{5F}{\isacharunderscore}}unfold{\isaliteral{5F}{\isacharunderscore}}post}}} declares equations which are + applied as rewrite rules to any code equation during preprocessing, + and symmetrically to any result of an evaluation. + \item \hyperlink{command.HOL.print-codeproc}{\mbox{\isa{\isacommand{print{\isaliteral{5F}{\isacharunderscore}}codeproc}}}} prints the setup of the code generator preprocessor.