mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
25 lines
385 B
V
25 lines
385 B
V
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'
|
|
}
|