equal
deleted
inserted
replaced
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 #> |