Edit function ( S arg0 , S arg1 , Edit arg2 ) { while ( arg2 . beginA < arg2 . endA && arg2 . beginB < arg2 . endB && equals ( arg0 , arg2 . beginA , arg1 , arg2 . beginB ) ) { arg2 . beginA ++ ; arg2 . beginB ++ ; } while ( arg2 . beginA < arg2 . endA && arg2 . beginB < arg2 . endB && equals ( arg0 , arg2 . endA - 1 , arg1 , arg2 . endB - 1 ) ) { arg2 . endA -- ; arg2 . endB -- ; } return arg2 ; }
modify the edit to remove common leading and trailing items . the supplied edit e is reduced in size by moving the beginning aand b points so the edit does not cover any items that are in common between the two sequences . the ending a and b points are also shifted to remove common items from the end of the region . concode_field_sep PlaceHolder placeHolder concode_field_sep boolean equals concode_elem_sep int hash