]>
Commit | Line | Data |
---|---|---|
1a4d82fc JJ |
1 | // Copyright 2013 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 | ||
12 | pub struct CrateId { | |
13 | local_path: String, | |
14 | junk: String | |
15 | } | |
16 | ||
17 | impl CrateId { | |
18 | fn new(s: &str) -> CrateId { | |
19 | CrateId { | |
20 | local_path: s.to_string(), | |
21 | junk: "wutevs".to_string() | |
22 | } | |
23 | } | |
24 | } | |
25 | ||
26 | pub fn remove_package_from_database() { | |
54a0048b | 27 | let mut lines_to_use: Vec<&CrateId> = Vec::new(); //~ ERROR E0495 |
85aaf69f | 28 | let push_id = |installed_id: &CrateId| { |
1a4d82fc | 29 | lines_to_use.push(installed_id); |
1a4d82fc JJ |
30 | }; |
31 | list_database(push_id); | |
32 | ||
85aaf69f | 33 | for l in &lines_to_use { |
1a4d82fc JJ |
34 | println!("{}", l.local_path); |
35 | } | |
36 | ||
37 | } | |
38 | ||
39 | pub fn list_database<F>(mut f: F) where F: FnMut(&CrateId) { | |
40 | let stuff = ["foo", "bar"]; | |
41 | ||
85aaf69f | 42 | for l in &stuff { |
1a4d82fc JJ |
43 | f(&CrateId::new(*l)); |
44 | } | |
45 | } | |
46 | ||
47 | pub fn main() { | |
48 | remove_package_from_database(); | |
49 | } |