docs: improve imap-types documentation (mentioning `Try{,From}`, valid inputs, etc.
E.g. Quoted has documentation that explains its meaning and how it is represented on the wire. But IMO the following information is important but missing:
- That
TryFromandFromare the main constructors - What inputs are invalid regarding the Rust API (e.g. the wire format of
Quotedforbids unquoted", but not the Rust API)
About to tackle this: Do you have an idea what would be the best place to put the documentation in? There is a "primer" at the top-level explaining a bit. Maybe we should put this into the core module, too?
Personally if I want to create an instance of type Foo I look at the documentation of Foo. Ideally there is an example that I can copy+paste. But a small mention of Try{,From} would be sufficient. If I want a more general understanding of the library/module, then I look at the library/module-level documentation (and I prefer not to because I'm lazy).