[CXX-1111] Stop using std::iterator Created: 01/Nov/16  Updated: 05/Oct/21  Resolved: 22/Jul/20

Status: Closed
Project: C++ Driver
Component/s: API
Affects Version/s: None
Fix Version/s: 3.7.0, 3.7.0-beta1

Type: Task Priority: Major - P3
Reporter: Mathias Stearn Assignee: Unassigned
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Minor Change

 Description   

It is deprecated in C++17 because it isn't helpful and makes code more obfuscated. http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0174r0.html#2.1

This would only break source-compatibility with code that foolishly uses std::is_base_of<std::iterator<...>, SOME_MONGO_TYPE>.



 Comments   
Comment by Githook User [ 22/Jul/20 ]

Author:

{'name': 'George Spatacean', 'email': 'george.spatacean@gmail.com', 'username': 'gspatace'}

Message: CXX-1111 Remove std::iterator inheritance
Directly specify std::iterator_traits fields in classes
Branch: master
https://github.com/mongodb/mongo-cxx-driver/commit/10b98ef9151c91ef6cbcbaae686e61b3e1559294

Comment by Kevin Albertson [ 22/Jul/20 ]

User contributed PR: https://github.com/mongodb/mongo-cxx-driver/pull/686

Generated at Wed Feb 07 22:01:26 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.