This change enables application developers to set BSONDecoder.userInfo. A test was added in BSONCodableTests and it passes on High Sierra but it appears that none of the BSONCodableTests run on Linux so it has not been run there.
It also includes some changes to the original pull request:
It includes a test demonstrating that either a concern raised for the original pull request ("userInfo is passed to sub-decoders but not back up") is either not an issue or that I don't correctly understand the issue.
Minor access control changes required to allow clients from outside the module to use the userInfo features.
This is a slightly modified version of the previously submitted and withdrawn pull request: https://github.com/OpenKitten/BSON/pull/44
This change enables application developers to set BSONDecoder.userInfo. A test was added in BSONCodableTests and it passes on High Sierra but it appears that none of the BSONCodableTests run on Linux so it has not been run there.
It also includes some changes to the original pull request: