я не могу сделать мой структура кодируемый/декодируемым:FromJson и ToJson для моей собственной структуры
enum MyEnum {
Enum1,
Enum2,
Enum3,
}
#[derive(RustcDecodable, RustcEncodable)]
pub struct MyStruct {
val1: MyEnum,
val2: i32,
val3 : BTreeMap<i64, Json>,
}
Ошибки:
the trait `rustc_serialize::serialize::Decodable` is not implemented for the type `rustc_serialize::json::Json`
the trait `rustc_serialize::serialize::Decodable` is not implemented for the type `rustc_serialize::json::MyEnum`
Я запутался, что мне нужно реализовать?
Вместо RustcEncodable
Мне нужно осуществить ToJson#to_json
. Но как насчет RustcDecodable
? Там нет черты FromJson#from_json
В документации говорится rustc_serialize::Decodable/Encodable
Но мне нужно Decodable
если есть ToJson#to_json
?
В любом случае, вопрос заключается в том, как сделать свою собственную структуру кодируемой и декодируемой из JSON?
Обратите внимание, что стиль ржавчины - это 4-х сторонние отступы. – Shepmaster
Не могли бы вы объяснить, почему вы также не комментировали 'MyEnum' с помощью' # [getive (RustcDecodable, RustcEncodable)] '? Не могли бы вы также объяснить, почему вы хотите иметь поле 'val3: BTreeMap', в частности, что это может представлять? –
Shepmaster
@Shepmaster, 1) Хорошо 2) Нет, я не могу объяснить. Я хочу просто решить его. –