Accumulated individual substitutions, sorted by **descending** position
Merge two Repl into one.
Merge two Repl into one.
Merging is done in 3 parts:
Substs' to are carved (splitted) to abide
by new (additional) Substs' fromSubsts' from are updated with the previous Substs's shiftRepl
the other Repl to be merged
Builds a new Repl with an added Subst built from the given substitution information.
Builds a new Repl with an added Subst built from the given substitution information.
starting position of the replacement in the current (old) String
length of the substring being replaced
length of the replacing substring
Builds a new Repl with an added Subst.
Builds a new Repl with an added Subst.
The substitution to append
Builds a new Repl with all its Substs shifted .
Builds a new Repl with all its Substs shifted .
The position shift to append to all Substs.
Carve this Substs according to given additional ones for merging.
Carve this Substs according to given additional ones for merging.
Additional Substs (ordered by descending to position)
This Repl's Substs (ordered by descending to position)
Current shift in position accumulated by the underlying Substs.
Compute the Interval in the original String corresponding the given interval in the current edit.
Compute the Interval in the original String corresponding the given interval in the current edit.
Corresponding Interval in the original String
Compute the Interval in the original String corresponding the given Interval in the current edit.
Compute the Interval in the original String corresponding the given Interval in the current edit.
Interval in the current version of the TrackString
Corresponding Interval in the original String
Compute the Interval in the original String corresponding the given position in the current edit.
Compute the Interval in the original String corresponding the given position in the current edit.
Position in the current version of the TrackString
Corresponding Interval in the original String
Accumulated individual substitutions, sorted by **descending** position
Update additional Substs' positions according to previous ones (this.substs) for merging.
Update additional Substs' positions according to previous ones (this.substs) for merging.
Additional Substs (ordered by descending to position)
Updated additional Substs
Holder for position tracking information across edits.
Accumulated individual substitutions, sorted by **descending** position