I was writing a small program using your crate and found that I could not easily "serde" the event data to JSON. There are ways around this but that would be a lot of work - it would be much more convenient for me if the Serialize and Deserialize traits were already on the types in your crate.
Turns out the Rust API guidelines recommend that authors implement the serde Serialize and Deserialize traits on all data structures, presumably for this sort of reason.
I went ahead and derived Serialize and Deserialize on all data structures I could find, given the fact that you use serde anyway. One notable exception is the Event enum, it didn't seem like enough of a data structure to me.
Also (this is in the same link above) they recommend a specific way to pull in serde and serde_json, I went ahead and put that in Cargo.toml. All unit tests still pass.
Don't hesitate to let me know if you'd like me to change anything in this PR, I'd be happy to. Thanks for your time!
Hi Trevor,
I was writing a small program using your crate and found that I could not easily "serde" the event data to JSON. There are ways around this but that would be a lot of work - it would be much more convenient for me if the
Serialize
andDeserialize
traits were already on the types in your crate.Turns out the Rust API guidelines recommend that authors implement the serde
Serialize
andDeserialize
traits on all data structures, presumably for this sort of reason.I went ahead and derived
Serialize
andDeserialize
on all data structures I could find, given the fact that you useserde
anyway. One notable exception is theEvent
enum, it didn't seem like enough of a data structure to me.Also (this is in the same link above) they recommend a specific way to pull in
serde
andserde_json
, I went ahead and put that in Cargo.toml. All unit tests still pass.Don't hesitate to let me know if you'd like me to change anything in this PR, I'd be happy to. Thanks for your time!
Toon