Make RangeEnumerator C++17 compliant (Generalizing the Range-Based For Loop)
authorChristopher Dykes <cdykes@fb.com>
Tue, 26 Jul 2016 22:48:54 +0000 (15:48 -0700)
committerFacebook Github Bot 5 <facebook-github-bot-5-bot@fb.com>
Tue, 26 Jul 2016 22:53:45 +0000 (15:53 -0700)
commit9982d892aa81516bb737ceb97879e7a8b35f4b05
tree75f999be1d177b687d79b290c1360c09f0888bae
parentd150b5b77eadf39ab6aeef9c29d0c2a7e8180184
Make RangeEnumerator C++17 compliant (Generalizing the Range-Based For Loop)

Summary:
Specifically the loosening of the definition of a range where-by the end of an iterator may be represented by a different type than the beginning of the range.
Oh, and it also fixes compilation on MSVC, which didn't like the decltype being used to determine the iterator type.

Reviewed By: yfeldblum

Differential Revision: D3613993

fbshipit-source-id: 2940a15d0f93c5b6310d0b1896f5d12ca9aec639
folly/Enumerate.h