equal
deleted
inserted
replaced
211 |> update_node name (edit_node edits) |
211 |> update_node name (edit_node edits) |
212 |> touch_node name |
212 |> touch_node name |
213 | Header header => |
213 | Header header => |
214 let |
214 let |
215 val imports = (case header of Exn.Res (_, {imports, ...}) => imports | _ => []); |
215 val imports = (case header of Exn.Res (_, {imports, ...}) => imports | _ => []); |
216 val keywords = (case header of Exn.Res (_, {keywords, ...}) => keywords | _ => []); |
|
217 val header' = |
216 val header' = |
218 (List.app (fn (name, decl) => |
217 ((case header of Exn.Res (_, h) => Thy_Header.define_keywords h | _ => ()); header) |
219 Keyword.declare name (Option.map Keyword.make decl)) keywords; header) |
|
220 handle exn as ERROR _ => Exn.Exn exn; |
218 handle exn as ERROR _ => Exn.Exn exn; |
221 val nodes1 = nodes |
219 val nodes1 = nodes |
222 |> default_node name |
220 |> default_node name |
223 |> fold default_node imports; |
221 |> fold default_node imports; |
224 val nodes2 = nodes1 |
222 val nodes2 = nodes1 |