blob: 2d14ed010dbb3046fd3ae26f4d267032cd657190 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
import expect
pub external type Iodata;
pub external fn prepend(Iodata, String) -> Iodata =
"gleam__stdlib" "iodata_prepend";
pub external fn append(Iodata, String) -> Iodata =
"gleam__stdlib" "iodata_append";
pub external fn from(List(String)) -> Iodata =
"gleam__stdlib" "identity";
pub external fn to_string(Iodata) -> String =
"erlang" "iolist_to_binary";
pub external fn byte_size(Iodata) -> Int =
"erlang" "iolist_size";
test iodata {
let iodata = from(["ello"])
|> append(_, ",")
|> append(_, " world!")
|> prepend(_, "H")
iodata
|> to_string
|> expect:equal(_, "Hello, world!")
iodata
|> byte_size
|> expect:equal(_, 13)
}
|