File tree Expand file tree Collapse file tree 2 files changed +51
-0
lines changed Expand file tree Collapse file tree 2 files changed +51
-0
lines changed Original file line number Diff line number Diff line change 1+ // Copyright 2015 The Rust Project Developers. See the COPYRIGHT
2+ // file at the top-level directory of this distribution and at
3+ // http://rust-lang.org/COPYRIGHT.
4+ //
5+ // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6+ // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7+ // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8+ // option. This file may not be copied, modified, or distributed
9+ // except according to those terms.
10+
11+ fn g < F > ( _: F ) where F : FnOnce ( Option < F > ) { }
12+
13+ fn main ( ) {
14+ g ( |_| { } ) ;
15+ }
Original file line number Diff line number Diff line change 1+ // Copyright 2015 The Rust Project Developers. See the COPYRIGHT
2+ // file at the top-level directory of this distribution and at
3+ // http://rust-lang.org/COPYRIGHT.
4+ //
5+ // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6+ // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7+ // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8+ // option. This file may not be copied, modified, or distributed
9+ // except according to those terms.
10+
11+ #![ feature( rustc_private) ]
12+
13+ extern crate serialize;
14+
15+ use serialize:: { Encodable , Decodable } ;
16+ use std:: fmt:: Display ;
17+
18+ pub trait Entity : Decodable + Encodable + Sized {
19+ type Key : Clone + Decodable + Encodable + ToString + Display + Eq + Ord + Sized ;
20+
21+ fn id ( & self ) -> Self :: Key ;
22+
23+ fn find_by_id ( id : Self :: Key ) -> Option < Self > ;
24+ }
25+
26+ pub struct DbRef < E : Entity > {
27+ pub id : E :: Key ,
28+ }
29+
30+ impl < E > DbRef < E > where E : Entity {
31+ fn get ( self ) -> Option < E > {
32+ E :: find_by_id ( self . id )
33+ }
34+ }
35+
36+ fn main ( ) { }
You can’t perform that action at this time.
0 commit comments