address remainning todo-notes, which had to do with updating the searchList when we insert into a buffer.

This commit is contained in:
2026-02-08 03:17:19 +00:00
parent c28ae4d8cd
commit 33866533a3
5 changed files with 22 additions and 30 deletions

View File

@@ -226,14 +226,17 @@ struct
val searchList =
let
val searchListLeft = PersistentVector.splitLeft (insIdx, searchList)
val searchListRight = PersistentVector.splitRight (insIdx, searchList)
val insLength = String.size insString
val searchListRight =
PersistentVector.incrementBy (String.size insString, searchList)
PersistentVector.splitRight (insIdx + insLength, searchList)
val searchListRight = PersistentVector.empty
in
PersistentVector.merge (searchListLeft, searchListRight)
if PersistentVector.isEmpty searchListLeft then searchListRight
else if PersistentVector.isEmpty searchListRight then searchListLeft
else PersistentVector.merge (searchListLeft, searchListRight)
end
(* start looking for new matches from the previous match *)
val oldStart = PersistentVector.prevMatch (insIdx, searchList, 1)
in
if Vector.length dfa = 0 then