v/vlib/json/json_decode_with_generic_te...

25 lines
387 B
V
Raw Normal View History

import json
struct Result<T> {
ok bool
result T
}
struct User {
id int
username string
}
fn func<T>() ?T {
text := '{"ok": true, "result":{"id":37467243, "username": "ciao"}}'
a := json.decode(Result<T>, text)?
return a.result
}
fn test_decode_with_generic_struct() ? {
ret := func<User>()?
println(ret)
assert ret.id == 37467243
assert ret.username == 'ciao'
}