blob: 6fe186405f84603103f968da37456de2b48afc5a [file] [edit]
def numChars (s : String) : Nat :=
go s.iter
where
go (i : String.Legacy.Iterator) : Nat :=
if h : i.hasNext then
go i.next + 1
else
0
#guard numChars "aαc" == 3
example : numChars "aαc" = 3 := by native_decide
def numChars2 (s : String) : Nat :=
go s.iter
where
go (i : String.Legacy.Iterator) : Nat :=
match h : i.hasNext with
| true => go i.next + 1
| false => 0
example : numChars2 "aαc" = 3 := by native_decide