У меня есть некоторые данные, которые я буду получать во время выполнения:
/* {id: 1, name: 'brad', age: 27, address: { city: 'city1', state: 'state1' } } */
let data = "{\"id\":1,\"name\":\"brad\",\"age\":27,\"address\":{\"city\":\"city1\",\"state\":\"state1\"}}";
Используя ReasonML и BuckleScript, как я могу получить эти данные в форме:
type address = {
city: string,
state: string
};
type person = {
id: int,
name: string,
age: option int,
address: option address
};
Решение, которое я придумал, состоит из сотен строк.