• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // check-pass
2 
3 pub trait Deserialize<'de>: Sized {}
4 pub trait DeserializeOwned: for<'de> Deserialize<'de> {}
5 
6 pub trait Extensible {
7     type Config;
8 }
9 
10 // The `C` here generates a `C: Sized` candidate
11 pub trait Installer<C> {
init<B: Extensible<Config = C>>(&mut self) -> () where B::Config: DeserializeOwned,12     fn init<B: Extensible<Config = C>>(&mut self) -> ()
13     where
14         // This clause generates a `for<'de> C: Sized` candidate
15         B::Config: DeserializeOwned,
16     {
17     }
18 }
19 
main()20 fn main() {}
21