Details
-
Task
-
Status: Closed
-
Major - P3
-
Resolution: Fixed
-
None
-
None
-
None
Description
Currently, the BSONValue protocol contains:
static func from(iterator iter: DocumentIterator) throws -> BSONValue
It was initially written this way to handle that we wanted it to support deprecated BSON types being upconverted to other BSON types - i.e. DBPointer to a DBRef Document. However, we've now handled that logic elsewhere and we just throw from the , and we can make the protocol requirement more strict:
static func from(iterator iter: DocumentIterator) throws -> Self
This work involves introducing a new type to represent BSON nulls due to some weird behavior experienced on Linux platforms when using NSNull.