CsWinRT
CsWinRT copied to clipboard
Perf: IIterator<>, IBindableIterator should use random access if available
The IIterable<> and IBindableIterable projections should have special implementations of IIterator IBindableIterator that use random access if available, by probing for IVector<>, IVectorView<>. This would reduce the number of vcalls from two (MoveNext, Current) to one (GetAt) while iterating over a collection.