add function to line_gap.sml to check if iterator is at end

This commit is contained in:
2025-10-08 06:24:40 +01:00
parent 7248a3e27f
commit 1d6213636e

View File

@@ -40,6 +40,7 @@ sig
val makeStringIterator: t -> string_iterator
val moveIteratorToIdx: int * string_iterator -> string_iterator
val subIterator: int * string_iterator -> char
val isIteratorAtEnd: string_iterator -> bool
(* for testing *)
val verifyIndex: t -> unit
@@ -3382,6 +3383,9 @@ struct
else
moveIteratorRight (findIdx, idx, leftStrings, rightStrings)
fun isIteratorAtEnd {idx = _, leftStrings = _, rightStrings} =
List.null rightStrings
fun subIterator (findIdx, {idx, leftStrings, rightStrings}) =
if findIdx >= idx then
case rightStrings of