389 end; |
389 end; |
390 |
390 |
391 fun thy_note ((name, atts), thms) = |
391 fun thy_note ((name, atts), thms) = |
392 PureThy.add_thmss [((name, thms), atts)] #-> (fn [thms] => pair (name, thms)); |
392 PureThy.add_thmss [((name, thms), atts)] #-> (fn [thms] => pair (name, thms)); |
393 fun thy_def false ((name, atts), t) = |
393 fun thy_def false ((name, atts), t) = |
394 PureThy.add_defs_i false [((name, t), atts)] #-> (fn [thm] => pair (name, thm)) |
394 PureThy.add_defs false [((name, t), atts)] #-> (fn [thm] => pair (name, thm)) |
395 | thy_def true ((name, atts), t) = |
395 | thy_def true ((name, atts), t) = |
396 PureThy.add_defs_unchecked_i false [((name, t), atts)] #-> (fn [thm] => pair (name, thm)); |
396 PureThy.add_defs_unchecked false [((name, t), atts)] #-> (fn [thm] => pair (name, thm)); |
397 |
397 |
398 in |
398 in |
399 |
399 |
400 val add_primrec = gen_primrec thy_note (thy_def false); |
400 val add_primrec = gen_primrec thy_note (thy_def false); |
401 val add_primrec_unchecked = gen_primrec thy_note (thy_def true); |
401 val add_primrec_unchecked = gen_primrec thy_note (thy_def true); |