{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang/rfcs/issues/756","labels_url":"https://api.github.com/repos/rust-lang/rfcs/issues/756/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rfcs/issues/756/comments","events_url":"https://api.github.com/repos/rust-lang/rfcs/issues/756/events","html_url":"https://github.com/rust-lang/rfcs/pull/756","id":55807935,"number":756,"title":"Allow closure expressions to expand to a `&` or `&mut` temporary","user":{"login":"nikomatsakis","id":155238,"avatar_url":"https://avatars.githubusercontent.com/u/155238?v=3","gravatar_id":"","url":"https://api.github.com/users/nikomatsakis","html_url":"https://github.com/nikomatsakis","followers_url":"https://api.github.com/users/nikomatsakis/followers","following_url":"https://api.github.com/users/nikomatsakis/following{/other_user}","gists_url":"https://api.github.com/users/nikomatsakis/gists{/gist_id}","starred_url":"https://api.github.com/users/nikomatsakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikomatsakis/subscriptions","organizations_url":"https://api.github.com/users/nikomatsakis/orgs","repos_url":"https://api.github.com/users/nikomatsakis/repos","events_url":"https://api.github.com/users/nikomatsakis/events{/privacy}","received_events_url":"https://api.github.com/users/nikomatsakis/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rust-lang/rfcs/labels/final-comment-period","name":"final-comment-period","color":"207de5"},{"url":"https://api.github.com/repos/rust-lang/rfcs/labels/T-lang","name":"T-lang","color":"bfd4f2"}],"state":"open","locked":false,"assignee":{"login":"nikomatsakis","id":155238,"avatar_url":"https://avatars.githubusercontent.com/u/155238?v=3","gravatar_id":"","url":"https://api.github.com/users/nikomatsakis","html_url":"https://github.com/nikomatsakis","followers_url":"https://api.github.com/users/nikomatsakis/followers","following_url":"https://api.github.com/users/nikomatsakis/following{/other_user}","gists_url":"https://api.github.com/users/nikomatsakis/gists{/gist_id}","starred_url":"https://api.github.com/users/nikomatsakis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikomatsakis/subscriptions","organizations_url":"https://api.github.com/users/nikomatsakis/orgs","repos_url":"https://api.github.com/users/nikomatsakis/repos","events_url":"https://api.github.com/users/nikomatsakis/events{/privacy}","received_events_url":"https://api.github.com/users/nikomatsakis/received_events","type":"User","site_admin":false},"milestone":null,"comments":22,"created_at":"2015-01-28T20:05:30Z","updated_at":"2015-06-17T00:51:06Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/rust-lang/rfcs/pulls/756","html_url":"https://github.com/rust-lang/rfcs/pull/756","diff_url":"https://github.com/rust-lang/rfcs/pull/756.diff","patch_url":"https://github.com/rust-lang/rfcs/pull/756.patch"},"body":"Modify the || expression sugar so that it can expand to either F, &F, or &mut F, where F is a fresh struct type implementing one of the Fn/FnMut/FnOnce traits.\r\n\r\n[Rendered view.](https://github.com/nikomatsakis/rfcs/blob/autoref-closure/text/0000-autoref-for-closures.md)"},"comment":{"url":"https://api.github.com/repos/rust-lang/rfcs/issues/comments/112615297","html_url":"https://github.com/rust-lang/rfcs/pull/756#issuecomment-112615297","issue_url":"https://api.github.com/repos/rust-lang/rfcs/issues/756","id":112615297,"user":{"login":"tikue","id":2915777,"avatar_url":"https://avatars.githubusercontent.com/u/2915777?v=3","gravatar_id":"","url":"https://api.github.com/users/tikue","html_url":"https://github.com/tikue","followers_url":"https://api.github.com/users/tikue/followers","following_url":"https://api.github.com/users/tikue/following{/other_user}","gists_url":"https://api.github.com/users/tikue/gists{/gist_id}","starred_url":"https://api.github.com/users/tikue/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tikue/subscriptions","organizations_url":"https://api.github.com/users/tikue/orgs","repos_url":"https://api.github.com/users/tikue/repos","events_url":"https://api.github.com/users/tikue/events{/privacy}","received_events_url":"https://api.github.com/users/tikue/received_events","type":"User","site_admin":false},"created_at":"2015-06-17T00:51:06Z","updated_at":"2015-06-17T00:51:06Z","body":"Eh, I think there's a clear difference between array literals and closures. Array literal syntax exists because they're a primitive type; without the syntax you can't make an array. Closure syntax only exists to make it easy to use the Fn* traits. I don't think its unreasonable for them to have special handling as described in this RFC.\r\n\r\nThat being said, I also dont think it's unreasonable to hold off on this RFC for a while. It's a nice-to-have, and it may be that by-value DSTs eliminate a majority of the cases this would be useful. If there's no urgency, why not wait and see where the chips fall."}}