-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Function type does not implement Clone #15444
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
I think this is a dupe of #14820. My investigation in #15191 (comment) suggests it should be possible to work around this by providing an explicit |
I haven't been able to find a way to explicitly impl |
impl Clone for Server {
fn clone(&self) -> Server {
let mut handlers = self.routes.handlers.iter().map(|x| *x);
Server { routes: Router { handlers: handlers.collect() } }
}
} |
Thanks Huon. I will play with that a bit and see if I can make it work in my code. |
Perhaps not directly related to the posts but it is to the title: how difficult would it be to allow rust programmers to implement user-defined traits for fn types without destroying type safety guarantees? |
It's possible right now: http://is.gd/kF8HbG. |
Thanks @sfackler, that helped quite a bit. |
Closes rust-lang#5988. Closes rust-lang#10176. Closes rust-lang#10456. Closes rust-lang#12744. Closes rust-lang#13264. Closes rust-lang#13324. Closes rust-lang#14182. Closes rust-lang#15381. Closes rust-lang#15444. Closes rust-lang#15480. Closes rust-lang#15756. Closes rust-lang#16822. Closes rust-lang#16966. Closes rust-lang#17351. Closes rust-lang#17503. Closes rust-lang#17545. Closes rust-lang#17771. Closes rust-lang#17816. Closes rust-lang#17897. Closes rust-lang#17905. Closes rust-lang#18188. Closes rust-lang#18232. Closes rust-lang#18345. Closes rust-lang#18389. Closes rust-lang#18400. Closes rust-lang#18502. Closes rust-lang#18611. Closes rust-lang#18783. Closes rust-lang#19009. Closes rust-lang#19081. Closes rust-lang#19098. Closes rust-lang#19127. Closes rust-lang#19135.
Closes rust-lang#5988. Closes rust-lang#10176. Closes rust-lang#10456. Closes rust-lang#12744. Closes rust-lang#13264. Closes rust-lang#13324. Closes rust-lang#14182. Closes rust-lang#15381. Closes rust-lang#15444. Closes rust-lang#15480. Closes rust-lang#15756. Closes rust-lang#16822. Closes rust-lang#16966. Closes rust-lang#17351. Closes rust-lang#17503. Closes rust-lang#17545. Closes rust-lang#17771. Closes rust-lang#17816. Closes rust-lang#17897. Closes rust-lang#17905. Closes rust-lang#18188. Closes rust-lang#18232. Closes rust-lang#18345. Closes rust-lang#18389. Closes rust-lang#18400. Closes rust-lang#18502. Closes rust-lang#18611. Closes rust-lang#18783. Closes rust-lang#19009. Closes rust-lang#19081. Closes rust-lang#19098. Closes rust-lang#19127. Closes rust-lang#19135.
Closes #5988. Closes #10176. Closes #10456. Closes #12744. Closes #13264. Closes #13324. Closes #14182. Closes #15381. Closes #15444. Closes #15480. Closes #15756. Closes #16822. Closes #16966. Closes #17351. Closes #17503. Closes #17545. Closes #17771. Closes #17816. Closes #17897. Closes #17905. Closes #18188. Closes #18232. Closes #18345. Closes #18389. Closes #18400. Closes #18502. Closes #18611. Closes #18783. Closes #19009. Closes #19081. Closes #19098. Closes #19127. Closes #19135.
I'm having some troubles with
Clone
for a function type.I'm using the following function in my code:
and it apparently doesn't implement
Clone
, nor can I implementClone
for it.This is the code that I'm using to test: http://is.gd/3cm94D
and the output I get when trying to compile code which requires the function to be
Clone
able:@Kimundi on irc suggested the following code: http://is.gd/WJCznj which works for this specific test case, but requires a lot of other changes in my code that I haven't been to get working yet.
The text was updated successfully, but these errors were encountered: