{"action":"created","comment":{"url":"https://api.github.com/repos/ericniebler/range-v3/pulls/comments/106284386","pull_request_review_id":27199246,"id":106284386,"diff_hunk":"@@ -0,0 +1,123 @@\n+/// \\file\n+// Range v3 library\n+//\n+//  Copyright Eric Niebler 2013-2014\n+//  Copyright Gonzalo Brito Gadeschi 2017\n+//\n+//  Use, modification and distribution is subject to the\n+//  Boost Software License, Version 1.0. (See accompanying\n+//  file LICENSE_1_0.txt or copy at\n+//  http://www.boost.org/LICENSE_1_0.txt)\n+//\n+// Project home: https://github.com/ericniebler/range-v3\n+//\n+\n+#ifndef RANGES_V3_VIEW_LINEAR_DISTRIBUTE_HPP\n+#define RANGES_V3_VIEW_LINEAR_DISTRIBUTE_HPP\n+#include <type_traits>\n+#include <range/v3/range_fwd.hpp>\n+#include <range/v3/view_facade.hpp>\n+#include <range/v3/utility/static_const.hpp>\n+\n+namespace ranges\n+{\n+    inline namespace v3\n+    {\n+        /// \\addtogroup group-views\n+        /// @{\n+\n+        /// Distributes `n >= 2` values linearly in the closed interval [`from`, `to`].\n+        template<typename T>\n+        struct linear_distribute_view\n+          : view_facade<linear_distribute_view<T>, finite>\n+        {\n+            static_assert(std::is_arithmetic<T>(),\n+                          \"T must model the Arithmetic<T> concept; that is, \"\n+                          \"it must be one of the native integer or floating-point types\");\n+        private:\n+            friend range_access;\n+\n+            T from_, to_, spacing_;\n+\n+            constexpr T read() const\n+            {\n+                return from_;\n+            }\n+            constexpr void next()\n+            {\n+                from_ += spacing_;\n+            }\n+            CONCEPT_REQUIRES(std::is_integral<T>())\n+            constexpr bool equal(default_sentinel) const\n+            {\n+                return from_ == to_ + spacing_;\n+            }\n+            CONCEPT_REQUIRES(std::is_floating_point<T>())\n+            constexpr bool equal(default_sentinel) const\n+            {\n+                return from_ > to_;\n+            }\n+            constexpr void prev()","path":"include/range/v3/view/linear_distribute.hpp","position":60,"original_position":60,"commit_id":"01f289e0f760810f8f8759b371bb492a8fffaf98","original_commit_id":"01f289e0f760810f8f8759b371bb492a8fffaf98","user":{"login":"CaseyCarter","id":456873,"avatar_url":"https://avatars1.githubusercontent.com/u/456873?v=3","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":"`RANGES_CXX14_CONSTEXPR`","created_at":"2017-03-15T21:12:11Z","updated_at":"2017-03-15T21:26:34Z","html_url":"https://github.com/ericniebler/range-v3/pull/586#discussion_r106284386","pull_request_url":"https://api.github.com/repos/ericniebler/range-v3/pulls/586","_links":{"self":{"href":"https://api.github.com/repos/ericniebler/range-v3/pulls/comments/106284386"},"html":{"href":"https://github.com/ericniebler/range-v3/pull/586#discussion_r106284386"},"pull_request":{"href":"https://api.github.com/repos/ericniebler/range-v3/pulls/586"}}},"pull_request":{"url":"https://api.github.com/repos/ericniebler/range-v3/pulls/586","id":110938318,"html_url":"https://github.com/ericniebler/range-v3/pull/586","diff_url":"https://github.com/ericniebler/range-v3/pull/586.diff","patch_url":"https://github.com/ericniebler/range-v3/pull/586.patch","issue_url":"https://api.github.com/repos/ericniebler/range-v3/issues/586","number":586,"state":"open","locked":false,"title":"view::linear_distribute","user":{"login":"gnzlbg","id":904614,"avatar_url":"https://avatars3.githubusercontent.com/u/904614?v=3","gravatar_id":"","url":"https://api.github.com/users/gnzlbg","html_url":"https://github.com/gnzlbg","followers_url":"https://api.github.com/users/gnzlbg/followers","following_url":"https://api.github.com/users/gnzlbg/following{/other_user}","gists_url":"https://api.github.com/users/gnzlbg/gists{/gist_id}","starred_url":"https://api.github.com/users/gnzlbg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gnzlbg/subscriptions","organizations_url":"https://api.github.com/users/gnzlbg/orgs","repos_url":"https://api.github.com/users/gnzlbg/repos","events_url":"https://api.github.com/users/gnzlbg/events{/privacy}","received_events_url":"https://api.github.com/users/gnzlbg/received_events","type":"User","site_admin":false},"body":"Adds `view::linear_distribute(from, to, n)` which linearly distributes `n >= 2` elements in the closed range `[from, to]`.\r\n\r\nRight now I've implemented it for types that satisfy `std::is_arithmetic<T> == true`. \r\n\r\nCloses #102 .","created_at":"2017-03-15T20:44:38Z","updated_at":"2017-03-15T21:26:34Z","closed_at":null,"merged_at":null,"merge_commit_sha":"b1766c4a7a8ab4d2ede03ddeaf657463e88b0525","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/ericniebler/range-v3/pulls/586/commits","review_comments_url":"https://api.github.com/repos/ericniebler/range-v3/pulls/586/comments","review_comment_url":"https://api.github.com/repos/ericniebler/range-v3/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ericniebler/range-v3/issues/586/comments","statuses_url":"https://api.github.com/repos/ericniebler/range-v3/statuses/01f289e0f760810f8f8759b371bb492a8fffaf98","head":{"label":"gnzlbg:linear_distribute","ref":"linear_distribute","sha":"01f289e0f760810f8f8759b371bb492a8fffaf98","user":{"login":"gnzlbg","id":904614,"avatar_url":"https://avatars3.githubusercontent.com/u/904614?v=3","gravatar_id":"","url":"https://api.github.com/users/gnzlbg","html_url":"https://github.com/gnzlbg","followers_url":"https://api.github.com/users/gnzlbg/followers","following_url":"https://api.github.com/users/gnzlbg/following{/other_user}","gists_url":"https://api.github.com/users/gnzlbg/gists{/gist_id}","starred_url":"https://api.github.com/users/gnzlbg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gnzlbg/subscriptions","organizations_url":"https://api.github.com/users/gnzlbg/orgs","repos_url":"https://api.github.com/users/gnzlbg/repos","events_url":"https://api.github.com/users/gnzlbg/events{/privacy}","received_events_url":"https://api.github.com/users/gnzlbg/received_events","type":"User","site_admin":false},"repo":{"id":33306276,"name":"range-v3","full_name":"gnzlbg/range-v3","owner":{"login":"gnzlbg","id":904614,"avatar_url":"https://avatars3.githubusercontent.com/u/904614?v=3","gravatar_id":"","url":"https://api.github.com/users/gnzlbg","html_url":"https://github.com/gnzlbg","followers_url":"https://api.github.com/users/gnzlbg/followers","following_url":"https://api.github.com/users/gnzlbg/following{/other_user}","gists_url":"https://api.github.com/users/gnzlbg/gists{/gist_id}","starred_url":"https://api.github.com/users/gnzlbg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gnzlbg/subscriptions","organizations_url":"https://api.github.com/users/gnzlbg/orgs","repos_url":"https://api.github.com/users/gnzlbg/repos","events_url":"https://api.github.com/users/gnzlbg/events{/privacy}","received_events_url":"https://api.github.com/users/gnzlbg/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/gnzlbg/range-v3","description":"Experimental range library for C++11/14/17","fork":true,"url":"https://api.github.com/repos/gnzlbg/range-v3","forks_url":"https://api.github.com/repos/gnzlbg/range-v3/forks","keys_url":"https://api.github.com/repos/gnzlbg/range-v3/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gnzlbg/range-v3/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gnzlbg/range-v3/teams","hooks_url":"https://api.github.com/repos/gnzlbg/range-v3/hooks","issue_events_url":"https://api.github.com/repos/gnzlbg/range-v3/issues/events{/number}","events_url":"https://api.github.com/repos/gnzlbg/range-v3/events","assignees_url":"https://api.github.com/repos/gnzlbg/range-v3/assignees{/user}","branches_url":"https://api.github.com/repos/gnzlbg/range-v3/branches{/branch}","tags_url":"https://api.github.com/repos/gnzlbg/range-v3/tags","blobs_url":"https://api.github.com/repos/gnzlbg/range-v3/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gnzlbg/range-v3/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gnzlbg/range-v3/git/refs{/sha}","trees_url":"https://api.github.com/repos/gnzlbg/range-v3/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gnzlbg/range-v3/statuses/{sha}","languages_url":"https://api.github.com/repos/gnzlbg/range-v3/languages","stargazers_url":"https://api.github.com/repos/gnzlbg/range-v3/stargazers","contributors_url":"https://api.github.com/repos/gnzlbg/range-v3/contributors","subscribers_url":"https://api.github.com/repos/gnzlbg/range-v3/subscribers","subscription_url":"https://api.github.com/repos/gnzlbg/range-v3/subscription","commits_url":"https://api.github.com/repos/gnzlbg/range-v3/commits{/sha}","git_commits_url":"https://api.github.com/repos/gnzlbg/range-v3/git/commits{/sha}","comments_url":"https://api.github.com/repos/gnzlbg/range-v3/comments{/number}","issue_comment_url":"https://api.github.com/repos/gnzlbg/range-v3/issues/comments{/number}","contents_url":"https://api.github.com/repos/gnzlbg/range-v3/contents/{+path}","compare_url":"https://api.github.com/repos/gnzlbg/range-v3/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gnzlbg/range-v3/merges","archive_url":"https://api.github.com/repos/gnzlbg/range-v3/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gnzlbg/range-v3/downloads","issues_url":"https://api.github.com/repos/gnzlbg/range-v3/issues{/number}","pulls_url":"https://api.github.com/repos/gnzlbg/range-v3/pulls{/number}","milestones_url":"https://api.github.com/repos/gnzlbg/range-v3/milestones{/number}","notifications_url":"https://api.github.com/repos/gnzlbg/range-v3/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gnzlbg/range-v3/labels{/name}","releases_url":"https://api.github.com/repos/gnzlbg/range-v3/releases{/id}","deployments_url":"https://api.github.com/repos/gnzlbg/range-v3/deployments","created_at":"2015-04-02T11:54:21Z","updated_at":"2016-05-09T13:24:58Z","pushed_at":"2017-03-15T21:05:43Z","git_url":"git://github.com/gnzlbg/range-v3.git","ssh_url":"git@github.com:gnzlbg/range-v3.git","clone_url":"https://github.com/gnzlbg/range-v3.git","svn_url":"https://github.com/gnzlbg/range-v3","homepage":"","size":10812,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"ericniebler:master","ref":"master","sha":"5c530d15885c3fdb80a36846921af4dc4cfcecbc","user":{"login":"ericniebler","id":225757,"avatar_url":"https://avatars2.githubusercontent.com/u/225757?v=3","gravatar_id":"","url":"https://api.github.com/users/ericniebler","html_url":"https://github.com/ericniebler","followers_url":"https://api.github.com/users/ericniebler/followers","following_url":"https://api.github.com/users/ericniebler/following{/other_user}","gists_url":"https://api.github.com/users/ericniebler/gists{/gist_id}","starred_url":"https://api.github.com/users/ericniebler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ericniebler/subscriptions","organizations_url":"https://api.github.com/users/ericniebler/orgs","repos_url":"https://api.github.com/users/ericniebler/repos","events_url":"https://api.github.com/users/ericniebler/events{/privacy}","received_events_url":"https://api.github.com/users/ericniebler/received_events","type":"User","site_admin":false},"repo":{"id":14305727,"name":"range-v3","full_name":"ericniebler/range-v3","owner":{"login":"ericniebler","id":225757,"avatar_url":"https://avatars2.githubusercontent.com/u/225757?v=3","gravatar_id":"","url":"https://api.github.com/users/ericniebler","html_url":"https://github.com/ericniebler","followers_url":"https://api.github.com/users/ericniebler/followers","following_url":"https://api.github.com/users/ericniebler/following{/other_user}","gists_url":"https://api.github.com/users/ericniebler/gists{/gist_id}","starred_url":"https://api.github.com/users/ericniebler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ericniebler/subscriptions","organizations_url":"https://api.github.com/users/ericniebler/orgs","repos_url":"https://api.github.com/users/ericniebler/repos","events_url":"https://api.github.com/users/ericniebler/events{/privacy}","received_events_url":"https://api.github.com/users/ericniebler/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ericniebler/range-v3","description":"Experimental range library for C++11/14/17","fork":false,"url":"https://api.github.com/repos/ericniebler/range-v3","forks_url":"https://api.github.com/repos/ericniebler/range-v3/forks","keys_url":"https://api.github.com/repos/ericniebler/range-v3/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ericniebler/range-v3/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ericniebler/range-v3/teams","hooks_url":"https://api.github.com/repos/ericniebler/range-v3/hooks","issue_events_url":"https://api.github.com/repos/ericniebler/range-v3/issues/events{/number}","events_url":"https://api.github.com/repos/ericniebler/range-v3/events","assignees_url":"https://api.github.com/repos/ericniebler/range-v3/assignees{/user}","branches_url":"https://api.github.com/repos/ericniebler/range-v3/branches{/branch}","tags_url":"https://api.github.com/repos/ericniebler/range-v3/tags","blobs_url":"https://api.github.com/repos/ericniebler/range-v3/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ericniebler/range-v3/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ericniebler/range-v3/git/refs{/sha}","trees_url":"https://api.github.com/repos/ericniebler/range-v3/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ericniebler/range-v3/statuses/{sha}","languages_url":"https://api.github.com/repos/ericniebler/range-v3/languages","stargazers_url":"https://api.github.com/repos/ericniebler/range-v3/stargazers","contributors_url":"https://api.github.com/repos/ericniebler/range-v3/contributors","subscribers_url":"https://api.github.com/repos/ericniebler/range-v3/subscribers","subscription_url":"https://api.github.com/repos/ericniebler/range-v3/subscription","commits_url":"https://api.github.com/repos/ericniebler/range-v3/commits{/sha}","git_commits_url":"https://api.github.com/repos/ericniebler/range-v3/git/commits{/sha}","comments_url":"https://api.github.com/repos/ericniebler/range-v3/comments{/number}","issue_comment_url":"https://api.github.com/repos/ericniebler/range-v3/issues/comments{/number}","contents_url":"https://api.github.com/repos/ericniebler/range-v3/contents/{+path}","compare_url":"https://api.github.com/repos/ericniebler/range-v3/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ericniebler/range-v3/merges","archive_url":"https://api.github.com/repos/ericniebler/range-v3/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ericniebler/range-v3/downloads","issues_url":"https://api.github.com/repos/ericniebler/range-v3/issues{/number}","pulls_url":"https://api.github.com/repos/ericniebler/range-v3/pulls{/number}","milestones_url":"https://api.github.com/repos/ericniebler/range-v3/milestones{/number}","notifications_url":"https://api.github.com/repos/ericniebler/range-v3/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ericniebler/range-v3/labels{/name}","releases_url":"https://api.github.com/repos/ericniebler/range-v3/releases{/id}","deployments_url":"https://api.github.com/repos/ericniebler/range-v3/deployments","created_at":"2013-11-11T16:05:48Z","updated_at":"2017-03-15T20:30:14Z","pushed_at":"2017-03-15T21:06:23Z","git_url":"git://github.com/ericniebler/range-v3.git","ssh_url":"git@github.com:ericniebler/range-v3.git","clone_url":"https://github.com/ericniebler/range-v3.git","svn_url":"https://github.com/ericniebler/range-v3","homepage":"","size":17220,"stargazers_count":992,"watchers_count":992,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":103,"mirror_url":null,"open_issues_count":72,"forks":103,"open_issues":72,"watchers":992,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ericniebler/range-v3/pulls/586"},"html":{"href":"https://github.com/ericniebler/range-v3/pull/586"},"issue":{"href":"https://api.github.com/repos/ericniebler/range-v3/issues/586"},"comments":{"href":"https://api.github.com/repos/ericniebler/range-v3/issues/586/comments"},"review_comments":{"href":"https://api.github.com/repos/ericniebler/range-v3/pulls/586/comments"},"review_comment":{"href":"https://api.github.com/repos/ericniebler/range-v3/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ericniebler/range-v3/pulls/586/commits"},"statuses":{"href":"https://api.github.com/repos/ericniebler/range-v3/statuses/01f289e0f760810f8f8759b371bb492a8fffaf98"}}}}
{"actor":{"display_login":"CaseyCarter"}}