duesee / imap-codec

Rock-solid and complete codec for IMAP
Apache License 2.0
35 stars 13 forks source link

refactor/question: Representation of `metadata::Entry` #449

Open duesee opened 4 months ago

duesee commented 4 months ago

Currently, an Entry is basically an AString. However, the RFC has more to say in prose about entries.

  • Each annotation is an entry that has a hierarchical name, with each component of the name separated by a slash ("/"). An entry name MUST NOT contain two consecutive "/" characters and MUST NOT end with a "/" character.
  • Entry names MUST NOT contain asterisk ("*") or percent ("%") characters and MUST NOT contain non-ASCII characters or characters with octet values in the range 0x00 to 0x19.
  • Entry names are case-insensitive.
  • All entries MUST have either "/shared" or "/private" as a prefix. Entry names MUST be specified in a Standards Track or IESG-approved Experimental RFC, or fall under the vendor namespace (i.e., use /shared/vendor/ or /private/vendor/ as the prefix).