…d() and findOne() A new API is needed for cursor instantiation still. MONGO_METHOD -= 5
So yeah, that really should be a correctly wired-up abstract class, and not an interface.
…ursors to a shared file.
…bject This is necessary because in some cases we need to guarantee that we have an Int64. For example the cursor ID comming back from a "command cursor" query. Without this we can't reliably get the correct int64 number, as we can not allow this to depend on ini settings.
Rather than infer the class entry (previously Cursor or CursorTimeout) from the error code, explicitly provide it. This makes it much easier to throw WriteConcernExceptions consistently (ensuring the host prefix and property are set) without having to anticipate error codes in GLE responses.
This was not used in any calling context and was likely a remnant of legacy code. Additionally, it did not appear to be freed in the error code path for MongoCursor::hasNext().
…aration. CS states that all macro names should be upper case. The embedded variable declaration confused me and it can easily introduce "declare after code" issues with MSVC.