<> <> DIRECTORY EditSpan, Rope, TextEdit, TextLooks, TextNode, TiogaOps; TiogaOpers: CEDAR DEFINITIONS = { ROPE: TYPE = Rope.ROPE; RefTextNode: TYPE = TextNode.Ref; Location: TYPE = TextNode.Location; Span: TYPE = TextNode.Span; Looks: TYPE = TextLooks.Looks; noLooks: Looks = TextLooks.noLooks; allLooks: Looks = TextLooks.allLooks; CharSet: TYPE = TextEdit.CharSet; Place: TYPE = EditSpan.Place; <> Delete: PROC [root: RefTextNode, del: Span]; InsertRope: PROC [root, dest: RefTextNode, rope: ROPE, destLoc: INT, inherit: BOOL _ TRUE, looks: Looks _ noLooks, charSet: CharSet _ 0]; Move: PROC [destRoot, srcRoot: RefTextNode, dest: Location, source: Span, where: Place _ after]; CallWithLock: PROC [Proc: PROC [RefTextNode], root: TiogaOps.Ref]; }.