src/HOL/Tools/datatype_codegen.ML
changeset 19818 5c5c1208a3fa
parent 19599 a5c7eb37d14f
child 19886 6bec6daac280
equal deleted inserted replaced
19817:bb16bf9ae3fd 19818:5c5c1208a3fa
   335   in
   335   in
   336     CodegenPackage.add_case_const case_name
   336     CodegenPackage.add_case_const case_name
   337       ((map (apsnd length) o #3 o the o AList.lookup (op =) descr) index) thy
   337       ((map (apsnd length) o #3 o the o AList.lookup (op =) descr) index) thy
   338   end;
   338   end;
   339 
   339 
       
   340 fun add_datatype_case_defs dtco thy =
       
   341   let
       
   342     val {case_rewrites, ...} = DatatypePackage.the_datatype thy dtco
       
   343   in
       
   344     fold CodegenTheorems.add_fun case_rewrites thy
       
   345   end;
       
   346 
   340 val setup = 
   347 val setup = 
   341   add_codegen "datatype" datatype_codegen #>
   348   add_codegen "datatype" datatype_codegen #>
   342   add_tycodegen "datatype" datatype_tycodegen #>
   349   add_tycodegen "datatype" datatype_tycodegen #>
   343   CodegenTheorems.add_datatype_extr
   350   CodegenTheorems.add_datatype_extr
   344     get_datatype_spec_thms #>
   351     get_datatype_spec_thms #>