28 lines
934 B
Text
28 lines
934 B
Text
def showChars : Nat → String → String.Pos → IO Unit
|
||
| 0, _, _ => pure ()
|
||
| n+1, s, idx =>
|
||
unless (s.atEnd idx) $
|
||
IO.println (">> " ++ toString (s.get idx)) *>
|
||
showChars n s (s.next idx)
|
||
|
||
def main : IO UInt32 :=
|
||
let s₁ := "hello α_world_β";
|
||
let b : String.Pos := 0;
|
||
let e := s₁.bsize;
|
||
IO.println (s₁.extract b e) *>
|
||
IO.println (s₁.extract (b+2) e) *>
|
||
IO.println (s₁.extract (b+2) (e-1)) *>
|
||
IO.println (s₁.extract (b+2) (e-2)) *>
|
||
IO.println (s₁.extract (b+7) e) *>
|
||
IO.println (s₁.extract (b+8) e) *>
|
||
IO.println (toString e) *>
|
||
IO.println (repr " aaa ".trim) *>
|
||
showChars s₁.length s₁ 0 *>
|
||
IO.println ("abc".isPrefixOf "abcd") *>
|
||
IO.println ("abcd".isPrefixOf "abcd") *>
|
||
IO.println ("".isPrefixOf "abcd") *>
|
||
IO.println ("".isPrefixOf "") *>
|
||
IO.println ("ab".isPrefixOf "cb") *>
|
||
IO.println ("ab".isPrefixOf "a") *>
|
||
IO.println ("αb".isPrefixOf "αbc") *>
|
||
pure 0
|