equal
deleted
inserted
replaced
1225 *) |
1225 *) |
1226 fun mk_recordT extT parent_exts = |
1226 fun mk_recordT extT parent_exts = |
1227 foldr (fn ((parent,Ts),T) => Type (parent, subst_last T Ts)) (parent_exts,extT); |
1227 foldr (fn ((parent,Ts),T) => Type (parent, subst_last T Ts)) (parent_exts,extT); |
1228 |
1228 |
1229 (* record_definition *) |
1229 (* record_definition *) |
1230 |
1230 fun record_definition (args, bname) parent (parents: parent_info list) raw_fields thy = |
1231 fun record_definition (args, bname) parent parents raw_fields thy = |
1231 (* smlnj needs type annotation of parents *) |
1232 let |
1232 let |
1233 val sign = Theory.sign_of thy; |
1233 val sign = Theory.sign_of thy; |
1234 |
1234 |
1235 val alphas = map fst args; |
1235 val alphas = map fst args; |
1236 val name = Sign.full_name sign bname; |
1236 val name = Sign.full_name sign bname; |