src/Doc/Isar_Ref/HOL_Specific.thy
changeset 70006 f12a52b5d812
parent 70005 e74444bdd310
child 70007 063da22e1c9e
equal deleted inserted replaced
70005:e74444bdd310 70006:f12a52b5d812
  2279     @{command_def (HOL) "code_reflect"} & : & \<open>theory \<rightarrow> theory\<close> \\
  2279     @{command_def (HOL) "code_reflect"} & : & \<open>theory \<rightarrow> theory\<close> \\
  2280     @{command_def (HOL) "code_pred"} & : & \<open>theory \<rightarrow> proof(prove)\<close>
  2280     @{command_def (HOL) "code_pred"} & : & \<open>theory \<rightarrow> proof(prove)\<close>
  2281   \end{matharray}
  2281   \end{matharray}
  2282 
  2282 
  2283   \<^rail>\<open>
  2283   \<^rail>\<open>
  2284     @@{command (HOL) export_code} @'open'? (const_expr+) \<newline>
  2284     @@{command (HOL) export_code} @'open'? \<newline> (const_expr+) (export_target*)
  2285        ((@'in' target (@'module_name' @{syntax string})? \<newline>
  2285     ;
  2286         (@'file' @{syntax string})? ('(' args ')')?)+) ?
  2286     export_target:
       
  2287       @'in' target (@'module_name' @{syntax string})? \<newline>
       
  2288       (@'file' @{syntax string})? ('(' args ')')?
       
  2289     ;
       
  2290     target: 'SML' | 'OCaml' | 'Haskell' | 'Scala' | 'Eval'
       
  2291     ;
       
  2292     const_expr: (const | 'name._' | '_')
  2287     ;
  2293     ;
  2288     const: @{syntax term}
  2294     const: @{syntax term}
  2289     ;
  2295     ;
  2290     const_expr: (const | 'name._' | '_')
       
  2291     ;
       
  2292     type_constructor: @{syntax name}
  2296     type_constructor: @{syntax name}
  2293     ;
  2297     ;
  2294     class: @{syntax name}
  2298     class: @{syntax name}
  2295     ;
       
  2296     target: 'SML' | 'OCaml' | 'Haskell' | 'Scala' | 'Eval'
       
  2297     ;
  2299     ;
  2298     @@{attribute (HOL) code} ('equation' | 'nbe' | 'abstype' | 'abstract'
  2300     @@{attribute (HOL) code} ('equation' | 'nbe' | 'abstype' | 'abstract'
  2299       | 'del' | 'drop:' (const+) | 'abort:' (const+))?
  2301       | 'del' | 'drop:' (const+) | 'abort:' (const+))?
  2300     ;
  2302     ;
  2301     @@{command (HOL) code_datatype} (const+)
  2303     @@{command (HOL) code_datatype} (const+)