bson: implement en/decoding and [de]serialization for parsed types using raw types

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Unknown
    • bson-3.0.0
    • Affects Version/s: None
    • Component/s: None
    • None
    • None
    • Rust Drivers
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?
    • None
    • None
    • None
    • None
    • None
    • None

      (For the distinction between en/decoding and [de]serialization, see RUST-1992)

      Raw bson types were introduced into the bson crate by way of a user contribution that incorporated the code from a previously-independent crate. As such, they have duplicate code for en/decoding byte buffers and interacting with serde, with various areas of subtle divergence versus the older parsed type equivalents.

      The raw bson types are substantially more efficient (and conceptually more fundamental) than the parsed types, so the byte parsing and serde interop of the latter should be stripped in favor of a thin layer around the former.

            Assignee:
            Unassigned
            Reporter:
            Abraham Egnor
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: