equal
deleted
inserted
replaced
256 |
256 |
257 (* reflection support *) |
257 (* reflection support *) |
258 |
258 |
259 fun check_datatype thy tyco some_consts = |
259 fun check_datatype thy tyco some_consts = |
260 let |
260 let |
261 val constrs = (map (fst o fst) o snd o Code.get_type thy) tyco; |
261 val constrs = (map fst o snd o fst o Code.get_type thy) tyco; |
262 val _ = case some_consts |
262 val _ = case some_consts |
263 of SOME consts => |
263 of SOME consts => |
264 let |
264 let |
265 val missing_constrs = subtract (op =) consts constrs; |
265 val missing_constrs = subtract (op =) consts constrs; |
266 val _ = if null missing_constrs then [] |
266 val _ = if null missing_constrs then [] |