@@ -13,32 +13,13 @@ use option::{Some, None, Option};
13
13
use ptr:: RawPtr ;
14
14
use rt:: rtio:: EventLoop ;
15
15
16
- #[ cfg( stage0) ] use cmp:: TotalOrd ;
17
- #[ cfg( stage0) ] use container:: MutableSet ;
18
- #[ cfg( stage0) ] use iter:: Iterator ;
19
- #[ cfg( stage0) ] use slice:: { ImmutableVector , OwnedVector } ;
20
-
21
16
// Need to tell the linker on OS X to not barf on undefined symbols
22
17
// and instead look them up at runtime, which we need to resolve
23
18
// the crate_map properly.
24
19
#[ cfg( target_os = "macos" ) ]
25
20
#[ link_args = "-Wl,-U,__rust_crate_map_toplevel" ]
26
21
extern { }
27
22
28
- #[ cfg( stage0) ]
29
- pub struct ModEntry < ' a > {
30
- name : & ' a str ,
31
- log_level : * mut u32
32
- }
33
-
34
- #[ cfg( stage0) ]
35
- pub struct CrateMap < ' a > {
36
- version : i32 ,
37
- entries : & ' a [ ModEntry < ' a > ] ,
38
- children : & ' a [ & ' a CrateMap < ' a > ] ,
39
- event_loop_factory : Option < fn ( ) -> ~EventLoop > ,
40
- }
41
- #[ cfg( not( stage0) ) ]
42
23
pub struct CrateMap < ' a > {
43
24
version : i32 ,
44
25
event_loop_factory : Option < fn ( ) -> ~EventLoop > ,
@@ -121,46 +102,3 @@ pub fn get_crate_map() -> Option<&'static CrateMap<'static>> {
121
102
}
122
103
}
123
104
}
124
-
125
- #[ cfg( stage0) ]
126
- fn version ( crate_map : & CrateMap ) -> i32 {
127
- match crate_map. version {
128
- 2 => return 2 ,
129
- _ => return 0
130
- }
131
- }
132
-
133
- #[ cfg( stage0) ]
134
- fn do_iter_crate_map < ' a > (
135
- crate_map : & ' a CrateMap < ' a > ,
136
- f : |& ' a ModEntry < ' a > |,
137
- visited : & mut ~[ * CrateMap < ' a > ] ) {
138
- let raw = crate_map as * CrateMap < ' a > ;
139
- if visited. bsearch ( |a| ( * a as uint ) . cmp ( & ( raw as uint ) ) ) . is_some ( ) {
140
- return
141
- }
142
- match visited. iter ( ) . position ( |i| * i as uint > raw as uint ) {
143
- Some ( i) => visited. insert ( i, raw) ,
144
- None => visited. push ( raw) ,
145
- }
146
-
147
- match version ( crate_map) {
148
- 2 => {
149
- let ( entries, children) = ( crate_map. entries , crate_map. children ) ;
150
- for entry in entries. iter ( ) {
151
- f ( entry) ;
152
- }
153
- for child in children. iter ( ) {
154
- do_iter_crate_map ( * child, |x| f ( x) , visited) ;
155
- }
156
- } ,
157
- _ => fail ! ( "invalid crate map version" )
158
- }
159
- }
160
-
161
- /// Iterates recursively over `crate_map` and all child crate maps
162
- #[ cfg( stage0) ]
163
- pub fn iter_crate_map < ' a > ( crate_map : & ' a CrateMap < ' a > , f : |& ' a ModEntry < ' a > |) {
164
- let mut v = ~[ ] ;
165
- do_iter_crate_map ( crate_map, f, & mut v) ;
166
- }
0 commit comments