import io:* import serialize:* import string:* import util:* import vector:* import vector_literals:* import map:* fun main():int { var intA = 7 write_file_binary(string("bintest.bin"), serialize(intA)) var intAout = unserialize(read_file_binary(string("bintest.bin"))) print(intA) print(" = ") println(intAout) // ok, lets do more than one var intB = 9 var intC = 11 write_file_binary(string("bintest.bin"), serialize(intB) + serialize(intC)) var bin = read_file_binary(string("bintest.bin")) // remember, these are pairs var intBout: int var intCout: int var pos = 0 unpack(intBout, pos) = unserialize(bin, pos) unpack(intCout, pos) = unserialize(bin, pos) print(intB) print(" , ") print(intC) print(" = ") print(intBout) print(" , ") println(intCout) // ok, lets do a vector write_file_binary(string("bintest.bin"), serialize(vector(1,2,3,4,5))) bin = read_file_binary(string("bintest.bin")) var back = vector() pos = 0 unpack(back, pos) = unserialize>(bin, 0) back.for_each(fun(i: int) { print(i); print(" "); }) println() // ok, lets do a string write_file_binary(string("bintest.bin"), serialize(string("hello serialize"))) bin = read_file_binary(string("bintest.bin")) var backStr = string() pos = 0 unpack(backStr, pos) = unserialize(bin, 0) println(backStr) // ok, lets do a map var m = map(3, 2.7) m.set(50, 3.14159) write_file_binary(string("bintest.bin"), serialize(m)) bin = read_file_binary(string("bintest.bin")) var backM = map() pos = 0 unpack(backM, pos) = unserialize>(bin, 0) backM.for_each(fun(key: int, value: double) { print(key) print(" = ") println(value) }) return 0 }