{"action":"created","issue":{"url":"https://api.github.com/repos/D-Programming-Language/phobos/issues/3198","labels_url":"https://api.github.com/repos/D-Programming-Language/phobos/issues/3198/labels{/name}","comments_url":"https://api.github.com/repos/D-Programming-Language/phobos/issues/3198/comments","events_url":"https://api.github.com/repos/D-Programming-Language/phobos/issues/3198/events","html_url":"https://github.com/D-Programming-Language/phobos/pull/3198","id":69301100,"number":3198,"title":"Tuple range interface","user":{"login":"JakobOvrum","id":155856,"avatar_url":"https://avatars.githubusercontent.com/u/155856?v=3","gravatar_id":"","url":"https://api.github.com/users/JakobOvrum","html_url":"https://github.com/JakobOvrum","followers_url":"https://api.github.com/users/JakobOvrum/followers","following_url":"https://api.github.com/users/JakobOvrum/following{/other_user}","gists_url":"https://api.github.com/users/JakobOvrum/gists{/gist_id}","starred_url":"https://api.github.com/users/JakobOvrum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JakobOvrum/subscriptions","organizations_url":"https://api.github.com/users/JakobOvrum/orgs","repos_url":"https://api.github.com/users/JakobOvrum/repos","events_url":"https://api.github.com/users/JakobOvrum/events{/privacy}","received_events_url":"https://api.github.com/users/JakobOvrum/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/D-Programming-Language/phobos/labels/needs%20review","name":"needs review","color":"5319e7"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-04-18T11:34:03Z","updated_at":"2015-12-30T12:10:20Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/D-Programming-Language/phobos/pulls/3198","html_url":"https://github.com/D-Programming-Language/phobos/pull/3198","diff_url":"https://github.com/D-Programming-Language/phobos/pull/3198.diff","patch_url":"https://github.com/D-Programming-Language/phobos/pull/3198.patch"},"body":"Adds a range interface for tuples with homogeneous types. The introduced range interface presents the fields by reference, so it's very different from `only(myTuple.expand)`, as the examples show.\r\n\r\nThe whitespace fixes are in a separate commit, so the diff for the second commit is probably easier to look at than the total diff.\r\n\r\nCould the new `return` attribute help with making this a memory safe interface?\r\n\r\n---\r\n\r\nDo tuples with internal padding exist? Or rather, do template argument lists with padding exist? I wasn't able to produce any with DMD32/Windows/OMF; I do have the code that handles it properly so it's readily available if padding is possible. Right now this patch includes a static assert checking that no tuple with padding is ever instantiated.\r\n\r\n---\r\n\r\nApparently, documented unittests inside a documented static-if like this confuses DDoc quite severely, so the DDoc description is duplicated three times in the output. I'll see if the bug tracker has anything on this."},"comment":{"url":"https://api.github.com/repos/D-Programming-Language/phobos/issues/comments/167987449","html_url":"https://github.com/D-Programming-Language/phobos/pull/3198#issuecomment-167987449","issue_url":"https://api.github.com/repos/D-Programming-Language/phobos/issues/3198","id":167987449,"user":{"login":"JakobOvrum","id":155856,"avatar_url":"https://avatars.githubusercontent.com/u/155856?v=3","gravatar_id":"","url":"https://api.github.com/users/JakobOvrum","html_url":"https://github.com/JakobOvrum","followers_url":"https://api.github.com/users/JakobOvrum/followers","following_url":"https://api.github.com/users/JakobOvrum/following{/other_user}","gists_url":"https://api.github.com/users/JakobOvrum/gists{/gist_id}","starred_url":"https://api.github.com/users/JakobOvrum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JakobOvrum/subscriptions","organizations_url":"https://api.github.com/users/JakobOvrum/orgs","repos_url":"https://api.github.com/users/JakobOvrum/repos","events_url":"https://api.github.com/users/JakobOvrum/events{/privacy}","received_events_url":"https://api.github.com/users/JakobOvrum/received_events","type":"User","site_admin":false},"created_at":"2015-12-30T12:10:20Z","updated_at":"2015-12-30T12:10:20Z","body":"Fixed the awkward condition and rebased."}}