Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use std::borrow::Borrow;
- struct ObjType;
- struct Client<'a> {
- Obj: &'a mut ObjType,
- }
- struct Sender;
- trait Handler{}
- impl<'a> Handler for Client<'a> {}
- fn connect_once<U, F, H>(url: U, factory: F) -> Result<(),()>
- where
- U: Borrow<str>,
- F: FnOnce(Sender) -> H,
- H: Handler,
- {
- Ok(())
- }
- fn connect<U, F, H>(url: U, factory: F) -> Result<(),()>
- where
- U: Borrow<str>,
- F: FnMut(Sender) -> H,
- H: Handler,
- {
- Ok(())
- }
- fn main() {
- let mut obj = ObjType;
- //connect("", |_:Sender| Client{Obj:&mut obj});//cannot infer an appropriate lifetime
- connect_once("", |_:Sender| Client{Obj:&mut obj});
- }
Add Comment
Please, Sign In to add comment