[cxx-interop] Add UnsafeCxxMutableInputIterator protocol

This is an inheritor of the existing `UnsafeCxxInputIterator` protocol, with the only difference being the ability to mutate `var pointee` via a non-const `operator*()`.

This is needed to support mutable subscripts for `std::map` via `CxxDictionary`.

rdar://105399019
This commit is contained in:
Egor Zhdan
2023-07-26 16:15:49 +01:00
parent 61d73d2b6f
commit 8d7d0efe13
7 changed files with 84 additions and 3 deletions

View File

@@ -116,6 +116,7 @@ PROTOCOL(CxxRandomAccessCollection)
PROTOCOL(CxxSequence)
PROTOCOL(CxxUniqueSet)
PROTOCOL(UnsafeCxxInputIterator)
PROTOCOL(UnsafeCxxMutableInputIterator)
PROTOCOL(UnsafeCxxRandomAccessIterator)
PROTOCOL(AsyncSequence)