Open wg21bot opened 1 year ago
P2727R0: iterator_interface
2023-01-17 Library Evolution Telecon Minutes
Champion: Zach Laine
Chair: Bryce Adelstein Lelbach
Minute Taker: Ben Craig
Start: 2023-01-17 11:06 Eastern
Does this paper have:
view_interface
is prior art in the Standard Library.Open Questions:
view_interface
.iterator
, which we've deprecated?iterator_interface_access
, the mechanism for providing private access to user's types, novel in the Standard Library? Is there any existing practice?Key Insights:
access
may be the wrong terminology for iterator_interface_access
- it's already used in the standard library for a number of exception types (bad_variant_access
, etc) and accessor
.interface
may be the wrong terminology. We should bikeshed other names. However, interface
is the terminology with precedence (view_interface
).Typos:
It would be nice if we could do using my_base_class::*
and get everything.
End: 12:02
This paper proposes facilities to ease writing iterators. The facilities are CRTP base classes and other helpers.
We reviewed the general design in depth. One issue that arose was the usability of these facilities when they are dependent base classes and names from the base classes are not injected into the derived class.
We also discussed potential performance implications, including both run-time and compile-time concerns.
This paper is in the early stages, so we'll definitely be seeing it again.
Revise the paper according to the following guidance and return to Library Evolution for further review:
P2727R1: iterator_interface
2023-03-21 Library Evolution Telecon Minutes
Champion: Zach Laine
Chair: Fabio Fracassi
Minute Taker: Ben Craig
Sentinel support for random access iterator?
make operator-> optional?
Document the issues with deducing this / operator<=> does not work to simplify that code.
use advance/distance_to, ... as names for customization types?
Wrapped vs new iterators
Fix iterator categories to make sure that C++20 iterator categories are observed.
We will see a revision of the paper
P2727R2 will be available in the 2023-05 mailing.
P2727R3: iterator_interface
2023-03-21 Library Evolution Telecon Minutes
Champion: Zach Laine
Chair: Fabio Fracassi
Minute Taker: Robert Leahy
POLL: We agree on the design of P2727r3, provide wording for the next revision.
SF | F | N | A | SA |
---|---|---|---|---|
6 | 8 | 0 | 0 | 0 |
Outcome: Unanimous consent
We made sure that the previous feedback has been incorporated, and looked at the additional implementation experience.
We approved the design.
We will see a revision of the paper, that includes initial wording, with the goal of forwarding the paper.
The next revision of the paper requires wording.
P2727R4: std::iterator_interface
2024-08-06 Library Evolution Telecon Minutes
Champion: Zach Laine Chair: Ben Craig Minute Taker: Mark Hoemmen
Mostly didn't have time to discuss, but there were mentions of objections to the design, so we should ensure that those objections are heard in the next meeting.
Wording and design discussion. Look up reflector discussions involving std::iterator_interface.
P2727R0 std::iterator_interface (Zach Laine)