src/Pure/Thy/thy_syntax.scala
changeset 54562 301a721af68b
parent 54524 14609d36cab8
child 55118 7df949045dc5
equal deleted inserted replaced
54561:ceb190f4f69f 54562:301a721af68b
   395     node: Document.Node, edit: Document.Edit_Text): Document.Node =
   395     node: Document.Node, edit: Document.Edit_Text): Document.Node =
   396   {
   396   {
   397     edit match {
   397     edit match {
   398       case (_, Document.Node.Clear()) => node.clear
   398       case (_, Document.Node.Clear()) => node.clear
   399 
   399 
       
   400       case (_, Document.Node.Blob()) => node
       
   401 
   400       case (name, Document.Node.Edits(text_edits)) =>
   402       case (name, Document.Node.Edits(text_edits)) =>
   401         val commands0 = node.commands
   403         val commands0 = node.commands
   402         val commands1 = edit_text(text_edits, commands0)
   404         val commands1 = edit_text(text_edits, commands0)
   403         val commands2 =
   405         val commands2 =
   404           recover_spans(thy_load, syntax, doc_blobs, name, node.perspective.visible, commands1)
   406           recover_spans(thy_load, syntax, doc_blobs, name, node.perspective.visible, commands1)
   413         if (node.same_perspective(perspective)) node
   415         if (node.same_perspective(perspective)) node
   414         else
   416         else
   415           node.update_perspective(perspective).update_commands(
   417           node.update_perspective(perspective).update_commands(
   416             consolidate_spans(thy_load, syntax, doc_blobs, reparse_limit,
   418             consolidate_spans(thy_load, syntax, doc_blobs, reparse_limit,
   417               name, visible, node.commands))
   419               name, visible, node.commands))
   418 
       
   419       case (_, Document.Node.Blob()) => node
       
   420     }
   420     }
   421   }
   421   }
   422 
   422 
   423   def text_edits(
   423   def text_edits(
   424       thy_load: Thy_Load,
   424       thy_load: Thy_Load,