payload: {"action":"created","comment":{"url":"https://api.github.com/repos/microsoft/STL/pulls/comments/350967484","pull_request_review_id":323267798,"id":350967484,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDM1MDk2NzQ4NA==","diff_hunk":"@@ -2668,9 +2744,223 @@ namespace ranges {\n     // CONCEPT ranges::contiguous_range\r\n     template <class _Rng>\r\n     concept contiguous_range = range<_Rng> && contiguous_iterator<iterator_t<_Rng>> && requires(_Rng& __r) {\r\n-        { data(__r) } -> same_as<add_pointer_t<range_reference_t<_Rng>>>;\r\n+        { _RANGES data(__r) } -> same_as<add_pointer_t<range_reference_t<_Rng>>>;\r\n     };\r\n     // clang-format on\r\n+\r\n+    // CLASS ranges::_Not_quite_object\r\n+    class _Not_quite_object {\r\n+    public:\r\n+        // Some overload sets in the library have the property that their constituent function templates are not visible\r\n+        // to argument-dependent name lookup (ADL) and that they inhibit ADL when found via unqualified name lookup.\r\n+        // This property allows these overload sets to be implemented as function objects. We derive such function\r\n+        // objects from this type to remove some typical object-ish behaviors which helps users avoid depending on their\r\n+        // non-specified object-ness.\r\n+\r\n+        struct _Construct_tag {};\r\n+\r\n+        _Not_quite_object() = delete;\r\n+\r\n+        constexpr explicit _Not_quite_object(_Construct_tag) noexcept {}\r\n+\r\n+        _Not_quite_object(const _Not_quite_object&) = delete;\r\n+        _Not_quite_object& operator=(const _Not_quite_object&) = delete;\r\n+\r\n+        void operator&() const = delete;\r\n+\r\n+    protected:\r\n+        ~_Not_quite_object() = default;\r\n+    };\r\n+\r\n+    // CLASS ranges::_Advance_fn\r\n+    class _Advance_fn : private _Not_quite_object {\r\n+    public:\r\n+        using _Not_quite_object::_Not_quite_object;\r\n+\r\n+        template <input_or_output_iterator _It>\r\n+        constexpr void operator()(_It& _Where, iter_difference_t<_It> _Off) const {\r\n+            if constexpr (random_access_iterator<_It>) {\r\n+                _Where += _Off;\r\n+            } else {\r\n+                if constexpr (!bidirectional_iterator<_It>) {\r\n+                    _STL_ASSERT(_Off >= 0, \"negative advance of non-bidirectional iterator\");\r\n+                }\r\n+\r\n+                auto&& _UWhere              = _Get_unwrapped_n(_STD move(_Where), _Off);\r\n+                constexpr bool _Need_rewrap = !is_reference_v<decltype(_Get_unwrapped_n(_STD move(_Where), _Off))>;\r\n+\r\n+                if constexpr (bidirectional_iterator<_It>) {\r\n+                    for (; _Off < 0; ++_Off) {\r\n+                        --_UWhere;\r\n+                    }\r\n+                }\r\n+\r\n+                for (; _Off > 0; --_Off) {\r\n+                    ++_UWhere;\r\n+                }\r\n+\r\n+                if constexpr (_Need_rewrap) {\r\n+                    _Seek_wrapped(_Where, _STD move(_UWhere));\r\n+                }\r\n+            }\r\n+        }\r\n+\r\n+        template <input_or_output_iterator _It, sentinel_for<_It> _Se>\r\n+        constexpr void operator()(_It& _Where, _Se _Last) const {\r\n+            if constexpr (assignable_from<_It&, _Se>) {\r\n+                _Where = static_cast<_Se&&>(_Last);\r\n+            } else if constexpr (sized_sentinel_for<_Se, _It>) {\r\n+                (*this)(_Where, _Last - _Where);\r\n+            } else {\r\n+                _Adl_verify_range(_Where, _Last);\r\n+\r\n+                auto&& _UWhere              = _Get_unwrapped(static_cast<_It&&>(_Where));\r\n+                constexpr bool _Need_rewrap = !is_reference_v<decltype(_Get_unwrapped(static_cast<_It&&>(_Where)))>;\r\n+                auto&& _ULast               = _Get_unwrapped(static_cast<_Se&&>(_Last));\r\n+\r\n+                while (_UWhere != _ULast) {\r\n+                    ++_UWhere;\r\n+                }\r\n+\r\n+                if constexpr (_Need_rewrap) {\r\n+                    _Seek_wrapped(_Where, static_cast<_It&&>(_UWhere));\r\n+                }\r\n+            }\r\n+        }\r\n+\r\n+        template <input_or_output_iterator _It, sentinel_for<_It> _Se>\r\n+        constexpr iter_difference_t<_It> operator()(_It& _Where, iter_difference_t<_It> _Off, _Se _Last) const {\r\n+            if constexpr (sized_sentinel_for<_Se, _It>) {\r\n+                const iter_difference_t<_It> _Delta = _Last - _Where;\r\n+                if ((_Off < 0 && _Off <= _Delta) || (_Off > 0 && _Off >= _Delta)) {\r\n+                    if constexpr (assignable_from<_It&, _Se>) {\r\n+                        _Where = static_cast<_Se&&>(_Last);\r\n+                    } else {\r\n+                        (*this)(_Where, _Delta);\r\n+                    }\r\n+                    return _Off - _Delta;\r\n+                }\r\n+\r\n+                (*this)(_Where, _Off);\r\n+                return 0;\r\n+            } else {\r\n+                // performance note: develop unwrapping technology for (i, n, s)?\r\n+                if constexpr (bidirectional_iterator<_It>) {\r\n+                    for (; _Off < 0 && _Where != _Last; ++_Off) {\r\n+                        --_Where;\r\n+                    }\r\n+                } else {\r\n+                    _STL_ASSERT(_Off >= 0, \"negative advance of non-bidirectional iterator\");\r\n+                }\r\n+\r\n+                for (; _Off > 0 && _Where != _Last; --_Off) {\r\n+                    ++_Where;\r\n+                }\r\n+\r\n+                return _Off;\r\n+            }\r\n+        }\r\n+    };\r\n+\r\n+    // VARIABLE ranges::advance\r\n+    inline constexpr _Advance_fn advance{_Not_quite_object::_Construct_tag{}};\r\n+\r\n+    // CLASS ranges::_Distance_fn\r\n+    class _Distance_fn : private _Not_quite_object {\r\n+    public:\r\n+        using _Not_quite_object::_Not_quite_object;\r\n+\r\n+        template <input_or_output_iterator _It, sentinel_for<_It> _Se>\r\n+        _NODISCARD constexpr iter_difference_t<_It> operator()(_It _First, _Se _Last) const {\r\n+            if constexpr (sized_sentinel_for<_Se, _It>) {\r\n+                return _Last - _First;\r\n+            } else {\r\n+                _Adl_verify_range(_First, _Last);\r\n+                auto _UFirst                  = _Get_unwrapped(static_cast<_It&&>(_First));\r\n+                const auto _ULast             = _Get_unwrapped(static_cast<_Se&&>(_Last));\r\n+                iter_difference_t<_It> _Count = 0;\r\n+                for (; _UFirst != _ULast; ++_UFirst) {\r\n+                    ++_Count;\r\n+                }\r\n+\r\n+                return _Count;\r\n+            }\r\n+        }\r\n+\r\n+        template <range _Rng>\r\n+        _NODISCARD constexpr range_difference_t<_Rng> operator()(_Rng&& _Val) const {\r\n+            if constexpr (sized_range<_Rng>) {\r\n+                return static_cast<range_difference_t<_Rng>>(_RANGES size(_Val));\r\n+            } else {\r\n+                return (*this)(_RANGES begin(_Val), _RANGES end(_Val));\r\n+            }\r\n+        }\r\n+    };\r\n+\r\n+    // VARIABLE ranges::distance\r\n+    inline constexpr _Distance_fn distance{_Not_quite_object::_Construct_tag{}};\r\n+\r\n+    // CLASS ranges::_Next_fn\r\n+    class _Next_fn : private _Not_quite_object {\r\n+    public:\r\n+        using _Not_quite_object::_Not_quite_object;\r\n+\r\n+        template <input_or_output_iterator _It>\r\n+        _NODISCARD constexpr _It operator()(_It _Where) const {\r\n+            ++_Where;\r\n+            return _Where;\r\n+        }\r\n+\r\n+        template <input_or_output_iterator _It>\r\n+        _NODISCARD constexpr _It operator()(_It _Where, const iter_difference_t<_It> _Off) const {\r\n+            _RANGES advance(_Where, _Off);\r","path":"stl/inc/xutility","position":1199,"original_position":1199,"commit_id":"1fb876587e6aa7172d5da38e0f54dee47463b27a","original_commit_id":"1fb876587e6aa7172d5da38e0f54dee47463b27a","user":{"login":"CaseyCarter","id":456873,"node_id":"MDQ6VXNlcjQ1Njg3Mw==","avatar_url":"https://avatars2.githubusercontent.com/u/456873?v=4","gravatar_id":"","url":"https://api.github.com/users/CaseyCarter","html_url":"https://github.com/CaseyCarter","followers_url":"https://api.github.com/users/CaseyCarter/followers","following_url":"https://api.github.com/users/CaseyCarter/following{/other_user}","gists_url":"https://api.github.com/users/CaseyCarter/gists{/gist_id}","starred_url":"https://api.github.com/users/CaseyCarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CaseyCarter/subscriptions","organizations_url":"https://api.github.com/users/CaseyCarter/orgs","repos_url":"https://api.github.com/users/CaseyCarter/repos","events_url":"https://api.github.com/users/CaseyCarter/events{/privacy}","received_events_url":"https://api.github.com/users/CaseyCarter/received_events","type":"User","site_admin":false},"body":"`next(i, n)` and `prev(i, n)` are equivalent to `advance(i, n)` and `advance(i, -n)` , respectively (ignoring for the moment that `advance` takes a reference and `next`/`prev` accept an and return a value). The crucial difference between `next` and `prev` is that `prev` evaluates `-n`, which potentially has undefined behavior when `n` is the most-negative value of a signed integral type. The assert in `prev` is there to check for that particular value. `next`, conversely, always has defined behavior.","created_at":"2019-11-26T20:35:20Z","updated_at":"2019-11-26T20:35:20Z","html_url":"https://github.com/microsoft/STL/pull/329#discussion_r350967484","pull_request_url":"https://api.github.com/repos/microsoft/STL/pulls/329","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/microsoft/STL/pulls/comments/350967484"},"html":{"href":"https://github.com/microsoft/STL/pull/329#discussion_r350967484"},"pull_request":{"href":"https://api.github.com/repos/microsoft/STL/pulls/329"}},"in_reply_to_id":350934284},"pull_request":{"url":"https://api.github.com/repos/microsoft/STL/pulls/329","id":345700857,"node_id":"MDExOlB1bGxSZXF1ZXN0MzQ1NzAwODU3","html_url":"https://github.com/microsoft/STL/pull/329","diff_url":"https://github.com/microsoft/STL/pull/329.diff","patch_url":"https://github.com/microsoft/STL/pull/329.patch","issue_url":"https://api.github.com/repos/microsoft/STL/issues/329","number":329,"state":"open","locked":false,"title":"[range.iter.ops], default_sentinel, and unreachable_sentinel","user":{"login":"CaseyCarter","id":456873,"node_id":"MDQ6VXNlcjQ1Njg3Mw==","avatar_url":"https://avatars2.githubusercontent.com/u/456873?v=4","gravatar_id":"","url":"https://api.github.com/users/CaseyCarter","html_url":"https://github.com/CaseyCarter","followers_url":"https://api.github.com/users/CaseyCarter/followers","following_url":"https://api.github.com/users/CaseyCarter/following{/other_user}","gists_url":"https://api.github.com/users/CaseyCarter/gists{/gist_id}","starred_url":"https://api.github.com/users/CaseyCarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CaseyCarter/subscriptions","organizations_url":"https://api.github.com/users/CaseyCarter/orgs","repos_url":"https://api.github.com/users/CaseyCarter/repos","events_url":"https://api.github.com/users/CaseyCarter/events{/privacy}","received_events_url":"https://api.github.com/users/CaseyCarter/received_events","type":"User","site_admin":false},"body":"# Description\r\n\r\nImplements iterator primitive operations `std::ranges::advance`, `std::ranges::next`, `std::ranges::prev`, and `std::ranges::distance`; as well as `std::default_sentinel` and `std::unreachable_sentinel`.\r\n\r\nThis change reworks the STL's iterator unwrapping machinery to enable unwrapping of C++20 move-only single-pass iterators (and `if constepxr`s all the things). Consequently, `_Iter_ref_t`, `_Iter_value_t`, and `_Iter_diff_t` resolve to `iter_reference_t`, `iter_value_t`, and `iter_difference_t` (respectively) in `__cpp_lib_concepts` (soon to be C++20) mode. This change necessitates some fixes to `unique_copy` and `_Fill_memset_is_safe` which both assume that `_Iter_value_t<T>` is well-formed for any iterator `T`. (`iter_value_t<T>` does not have that property: it is only well-formed when `readable<T>`.)\r\n\r\nI notably haven't unified `default_sentinel_t` with `_Default_sentinel` out of an abundance of paranoia. Our `move_iterator` is comparable with `_Default_sentinel`, which is not the case for `std::default_sentinel`.\r\n\r\nDrive-by:\r\n* This change `if constexpr`-izes `unique_copy`.\r\n\r\n[This is a replay of Microsoft-internal PR MSVC-PR-214209.]\r\n\r\n# Checklist\r\n\r\nBe sure you've read README.md and understand the scope of this repo.\r\n\r\nIf you're unsure about a box, leave it unchecked. A maintainer will help you.\r\n\r\n- [X] Identifiers in product code changes are properly `_Ugly` as per\r\n  https://eel.is/c++draft/lex.name#3.1 or there are no product code changes.\r\n- [X] The STL builds successfully and all tests have passed (must be manually\r\n  verified by an STL maintainer before automated testing is enabled on GitHub,\r\n  leave this unchecked for initial submission).\r\n- [X] These changes introduce no known ABI breaks (adding members, renaming\r\n  members, adding virtual functions, changing whether a type is an aggregate\r\n  or trivially copyable, etc.).\r\n- [X] These changes were written from scratch using only this repository,\r\n  the C++ Working Draft (including any cited standards), other WG21 papers\r\n  (excluding reference implementations outside of proposed standard wording),\r\n  and LWG issues as reference material. If they were derived from a project\r\n  that's already listed in NOTICE.txt, that's fine, but please mention it.\r\n  If they were derived from any other project (including Boost and libc++,\r\n  which are not yet listed in NOTICE.txt), you *must* mention it here,\r\n  so we can determine whether the license is compatible and what else needs\r\n  to be done.\r\n","created_at":"2019-11-26T12:14:42Z","updated_at":"2019-11-26T20:35:20Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ce74e6198585578fc98ae6f3964257d6544bc435","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[{"name":"vclibs","id":2808065,"node_id":"MDQ6VGVhbTI4MDgwNjU=","slug":"vclibs","description":"Visual C++ Libraries","privacy":"closed","url":"https://api.github.com/teams/2808065","html_url":"https://github.com/orgs/microsoft/teams/vclibs","members_url":"https://api.github.com/teams/2808065/members{/member}","repositories_url":"https://api.github.com/teams/2808065/repos","permission":"pull"}],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/microsoft/STL/pulls/329/commits","review_comments_url":"https://api.github.com/repos/microsoft/STL/pulls/329/comments","review_comment_url":"https://api.github.com/repos/microsoft/STL/pulls/comments{/number}","comments_url":"https://api.github.com/repos/microsoft/STL/issues/329/comments","statuses_url":"https://api.github.com/repos/microsoft/STL/statuses/1fb876587e6aa7172d5da38e0f54dee47463b27a","head":{"label":"CaseyCarter:replay","ref":"replay","sha":"1fb876587e6aa7172d5da38e0f54dee47463b27a","user":{"login":"CaseyCarter","id":456873,"node_id":"MDQ6VXNlcjQ1Njg3Mw==","avatar_url":"https://avatars2.githubusercontent.com/u/456873?v=4","gravatar_id":"","url":"https://api.github.com/users/CaseyCarter","html_url":"https://github.com/CaseyCarter","followers_url":"https://api.github.com/users/CaseyCarter/followers","following_url":"https://api.github.com/users/CaseyCarter/following{/other_user}","gists_url":"https://api.github.com/users/CaseyCarter/gists{/gist_id}","starred_url":"https://api.github.com/users/CaseyCarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CaseyCarter/subscriptions","organizations_url":"https://api.github.com/users/CaseyCarter/orgs","repos_url":"https://api.github.com/users/CaseyCarter/repos","events_url":"https://api.github.com/users/CaseyCarter/events{/privacy}","received_events_url":"https://api.github.com/users/CaseyCarter/received_events","type":"User","site_admin":false},"repo":{"id":209069595,"node_id":"MDEwOlJlcG9zaXRvcnkyMDkwNjk1OTU=","name":"STL","full_name":"CaseyCarter/STL","private":false,"owner":{"login":"CaseyCarter","id":456873,"node_id":"MDQ6VXNlcjQ1Njg3Mw==","avatar_url":"https://avatars2.githubusercontent.com/u/456873?v=4","gravatar_id":"","url":"https://api.github.com/users/CaseyCarter","html_url":"https://github.com/CaseyCarter","followers_url":"https://api.github.com/users/CaseyCarter/followers","following_url":"https://api.github.com/users/CaseyCarter/following{/other_user}","gists_url":"https://api.github.com/users/CaseyCarter/gists{/gist_id}","starred_url":"https://api.github.com/users/CaseyCarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CaseyCarter/subscriptions","organizations_url":"https://api.github.com/users/CaseyCarter/orgs","repos_url":"https://api.github.com/users/CaseyCarter/repos","events_url":"https://api.github.com/users/CaseyCarter/events{/privacy}","received_events_url":"https://api.github.com/users/CaseyCarter/received_events","type":"User","site_admin":false},"html_url":"https://github.com/CaseyCarter/STL","description":"MSVC's implementation of the C++ Standard Library.","fork":true,"url":"https://api.github.com/repos/CaseyCarter/STL","forks_url":"https://api.github.com/repos/CaseyCarter/STL/forks","keys_url":"https://api.github.com/repos/CaseyCarter/STL/keys{/key_id}","collaborators_url":"https://api.github.com/repos/CaseyCarter/STL/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/CaseyCarter/STL/teams","hooks_url":"https://api.github.com/repos/CaseyCarter/STL/hooks","issue_events_url":"https://api.github.com/repos/CaseyCarter/STL/issues/events{/number}","events_url":"https://api.github.com/repos/CaseyCarter/STL/events","assignees_url":"https://api.github.com/repos/CaseyCarter/STL/assignees{/user}","branches_url":"https://api.github.com/repos/CaseyCarter/STL/branches{/branch}","tags_url":"https://api.github.com/repos/CaseyCarter/STL/tags","blobs_url":"https://api.github.com/repos/CaseyCarter/STL/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/CaseyCarter/STL/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/CaseyCarter/STL/git/refs{/sha}","trees_url":"https://api.github.com/repos/CaseyCarter/STL/git/trees{/sha}","statuses_url":"https://api.github.com/repos/CaseyCarter/STL/statuses/{sha}","languages_url":"https://api.github.com/repos/CaseyCarter/STL/languages","stargazers_url":"https://api.github.com/repos/CaseyCarter/STL/stargazers","contributors_url":"https://api.github.com/repos/CaseyCarter/STL/contributors","subscribers_url":"https://api.github.com/repos/CaseyCarter/STL/subscribers","subscription_url":"https://api.github.com/repos/CaseyCarter/STL/subscription","commits_url":"https://api.github.com/repos/CaseyCarter/STL/commits{/sha}","git_commits_url":"https://api.github.com/repos/CaseyCarter/STL/git/commits{/sha}","comments_url":"https://api.github.com/repos/CaseyCarter/STL/comments{/number}","issue_comment_url":"https://api.github.com/repos/CaseyCarter/STL/issues/comments{/number}","contents_url":"https://api.github.com/repos/CaseyCarter/STL/contents/{+path}","compare_url":"https://api.github.com/repos/CaseyCarter/STL/compare/{base}...{head}","merges_url":"https://api.github.com/repos/CaseyCarter/STL/merges","archive_url":"https://api.github.com/repos/CaseyCarter/STL/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/CaseyCarter/STL/downloads","issues_url":"https://api.github.com/repos/CaseyCarter/STL/issues{/number}","pulls_url":"https://api.github.com/repos/CaseyCarter/STL/pulls{/number}","milestones_url":"https://api.github.com/repos/CaseyCarter/STL/milestones{/number}","notifications_url":"https://api.github.com/repos/CaseyCarter/STL/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/CaseyCarter/STL/labels{/name}","releases_url":"https://api.github.com/repos/CaseyCarter/STL/releases{/id}","deployments_url":"https://api.github.com/repos/CaseyCarter/STL/deployments","created_at":"2019-09-17T14:02:09Z","updated_at":"2019-11-02T16:38:32Z","pushed_at":"2019-11-26T20:14:45Z","git_url":"git://github.com/CaseyCarter/STL.git","ssh_url":"git@github.com:CaseyCarter/STL.git","clone_url":"https://github.com/CaseyCarter/STL.git","svn_url":"https://github.com/CaseyCarter/STL","homepage":null,"size":2416,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"microsoft:master","ref":"master","sha":"8f4c8163775d665d80642044ce27c4bc696127ce","user":{"login":"microsoft","id":6154722,"node_id":"MDEyOk9yZ2FuaXphdGlvbjYxNTQ3MjI=","avatar_url":"https://avatars2.githubusercontent.com/u/6154722?v=4","gravatar_id":"","url":"https://api.github.com/users/microsoft","html_url":"https://github.com/microsoft","followers_url":"https://api.github.com/users/microsoft/followers","following_url":"https://api.github.com/users/microsoft/following{/other_user}","gists_url":"https://api.github.com/users/microsoft/gists{/gist_id}","starred_url":"https://api.github.com/users/microsoft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/microsoft/subscriptions","organizations_url":"https://api.github.com/users/microsoft/orgs","repos_url":"https://api.github.com/users/microsoft/repos","events_url":"https://api.github.com/users/microsoft/events{/privacy}","received_events_url":"https://api.github.com/users/microsoft/received_events","type":"Organization","site_admin":false},"repo":{"id":204593825,"node_id":"MDEwOlJlcG9zaXRvcnkyMDQ1OTM4MjU=","name":"STL","full_name":"microsoft/STL","private":false,"owner":{"login":"microsoft","id":6154722,"node_id":"MDEyOk9yZ2FuaXphdGlvbjYxNTQ3MjI=","avatar_url":"https://avatars2.githubusercontent.com/u/6154722?v=4","gravatar_id":"","url":"https://api.github.com/users/microsoft","html_url":"https://github.com/microsoft","followers_url":"https://api.github.com/users/microsoft/followers","following_url":"https://api.github.com/users/microsoft/following{/other_user}","gists_url":"https://api.github.com/users/microsoft/gists{/gist_id}","starred_url":"https://api.github.com/users/microsoft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/microsoft/subscriptions","organizations_url":"https://api.github.com/users/microsoft/orgs","repos_url":"https://api.github.com/users/microsoft/repos","events_url":"https://api.github.com/users/microsoft/events{/privacy}","received_events_url":"https://api.github.com/users/microsoft/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/microsoft/STL","description":"MSVC's implementation of the C++ Standard Library.","fork":false,"url":"https://api.github.com/repos/microsoft/STL","forks_url":"https://api.github.com/repos/microsoft/STL/forks","keys_url":"https://api.github.com/repos/microsoft/STL/keys{/key_id}","collaborators_url":"https://api.github.com/repos/microsoft/STL/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/microsoft/STL/teams","hooks_url":"https://api.github.com/repos/microsoft/STL/hooks","issue_events_url":"https://api.github.com/repos/microsoft/STL/issues/events{/number}","events_url":"https://api.github.com/repos/microsoft/STL/events","assignees_url":"https://api.github.com/repos/microsoft/STL/assignees{/user}","branches_url":"https://api.github.com/repos/microsoft/STL/branches{/branch}","tags_url":"https://api.github.com/repos/microsoft/STL/tags","blobs_url":"https://api.github.com/repos/microsoft/STL/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/microsoft/STL/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/microsoft/STL/git/refs{/sha}","trees_url":"https://api.github.com/repos/microsoft/STL/git/trees{/sha}","statuses_url":"https://api.github.com/repos/microsoft/STL/statuses/{sha}","languages_url":"https://api.github.com/repos/microsoft/STL/languages","stargazers_url":"https://api.github.com/repos/microsoft/STL/stargazers","contributors_url":"https://api.github.com/repos/microsoft/STL/contributors","subscribers_url":"https://api.github.com/repos/microsoft/STL/subscribers","subscription_url":"https://api.github.com/repos/microsoft/STL/subscription","commits_url":"https://api.github.com/repos/microsoft/STL/commits{/sha}","git_commits_url":"https://api.github.com/repos/microsoft/STL/git/commits{/sha}","comments_url":"https://api.github.com/repos/microsoft/STL/comments{/number}","issue_comment_url":"https://api.github.com/repos/microsoft/STL/issues/comments{/number}","contents_url":"https://api.github.com/repos/microsoft/STL/contents/{+path}","compare_url":"https://api.github.com/repos/microsoft/STL/compare/{base}...{head}","merges_url":"https://api.github.com/repos/microsoft/STL/merges","archive_url":"https://api.github.com/repos/microsoft/STL/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/microsoft/STL/downloads","issues_url":"https://api.github.com/repos/microsoft/STL/issues{/number}","pulls_url":"https://api.github.com/repos/microsoft/STL/pulls{/number}","milestones_url":"https://api.github.com/repos/microsoft/STL/milestones{/number}","notifications_url":"https://api.github.com/repos/microsoft/STL/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/microsoft/STL/labels{/name}","releases_url":"https://api.github.com/repos/microsoft/STL/releases{/id}","deployments_url":"https://api.github.com/repos/microsoft/STL/deployments","created_at":"2019-08-27T01:31:18Z","updated_at":"2019-11-26T14:18:34Z","pushed_at":"2019-11-26T12:14:43Z","git_url":"git://github.com/microsoft/STL.git","ssh_url":"git@github.com:microsoft/STL.git","clone_url":"https://github.com/microsoft/STL.git","svn_url":"https://github.com/microsoft/STL","homepage":null,"size":2409,"stargazers_count":4434,"watchers_count":4434,"language":"C++","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":431,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":171,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":431,"open_issues":171,"watchers":4434,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/microsoft/STL/pulls/329"},"html":{"href":"https://github.com/microsoft/STL/pull/329"},"issue":{"href":"https://api.github.com/repos/microsoft/STL/issues/329"},"comments":{"href":"https://api.github.com/repos/microsoft/STL/issues/329/comments"},"review_comments":{"href":"https://api.github.com/repos/microsoft/STL/pulls/329/comments"},"review_comment":{"href":"https://api.github.com/repos/microsoft/STL/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/microsoft/STL/pulls/329/commits"},"statuses":{"href":"https://api.github.com/repos/microsoft/STL/statuses/1fb876587e6aa7172d5da38e0f54dee47463b27a"}},"author_association":"MEMBER"}}
other: {"actor":{"display_login":"CaseyCarter"}}