# Package org.eclipse.text.edits

package org.eclipse.text.edits
Provides support for describing and applying textual document editions.

A complex textual edition can be described by a tree of `TextEdit`s. An edit can be applied to an `IDocument` by calling `TextEdit.apply` or by using a `TextEditProcessor`. Applying a text edit can record a reverse edit description that can be used to undo the edition.

Use the standard edit kinds to describe the basic document editing operations:

- replace a document range: `ReplaceEdit`
- delete a document range: `DeleteEdit`
- insert text: `InsertEdit`
- track a range while the document is being modified: `RangeMarker`

Other subclasses of `TextEdit` exist for specialized tasks. Use `MultiTextEdit` to compose a complex edit tree, or subclass it to provide a custom edit.

Class
Description
CopyingRangeMarker
A `CopyingRangeMarker` can be used to track positions when executing text edits.
CopySourceEdit
A copy source edit denotes the source of a copy operation.
CopyTargetEdit
A copy target edit denotes the target of a copy operation.
DeleteEdit
Text edit to delete a range in a document.
InsertEdit
Text edit to insert a text at a given position in a document.
ISourceModifier
A source modifier can be used to modify the source of a move or copy edit before it gets inserted at the target position.
MalformedTreeException
Thrown to indicate that an edit got added to a parent edit but the child edit somehow conflicts with the parent or one of it siblings.
MoveSourceEdit
A move source edit denotes the source of a move operation.
MoveTargetEdit
A move target edit denotes the target of a move operation.
MultiTextEdit
A multi-text edit can be used to aggregate several edits into one edit.
RangeMarker
A range marker can be used to track positions when executing text edits.
ReplaceEdit
Text edit to replace a range in a document with a different string.
TextEdit
A text edit describes an elementary text manipulation operation.
TextEditCopier
Copies a tree of text edits.
TextEditGroup
A text edit group combines a list of `TextEdit`s and a name into a single object.
TextEditProcessor
A `TextEditProcessor` manages a set of edits and applies them as a whole to an `IDocument`.
TextEditVisitor
A visitor for text edits.
UndoEdit
This class encapsulates the reverse changes of an executed text edit tree.