@@ -77,7 +77,7 @@ fn next_line(file: filemap, chpos: uint, byte_pos: uint) {
77
77
file. lines += [ { ch: chpos, byte: byte_pos + file. start_pos . byte } ] ;
78
78
}
79
79
80
- type lookup_fn = fn @ ( file_pos ) -> uint ;
80
+ type lookup_fn = pure fn ( file_pos ) -> uint ;
81
81
82
82
fn lookup_line ( map : codemap , pos : uint , lookup : lookup_fn )
83
83
-> { fm : filemap , line : uint }
@@ -108,12 +108,12 @@ fn lookup_pos(map: codemap, pos: uint, lookup: lookup_fn) -> loc {
108
108
}
109
109
110
110
fn lookup_char_pos ( map : codemap , pos : uint ) -> loc {
111
- fn lookup ( pos : file_pos ) -> uint { ret pos. ch ; }
111
+ pure fn lookup ( pos : file_pos ) -> uint { ret pos. ch ; }
112
112
ret lookup_pos ( map, pos, lookup) ;
113
113
}
114
114
115
115
fn lookup_byte_pos ( map : codemap , pos : uint ) -> loc {
116
- fn lookup ( pos : file_pos ) -> uint { ret pos. byte ; }
116
+ pure fn lookup ( pos : file_pos ) -> uint { ret pos. byte ; }
117
117
ret lookup_pos ( map, pos, lookup) ;
118
118
}
119
119
@@ -139,7 +139,7 @@ fn lookup_char_pos_adj(map: codemap, pos: uint)
139
139
}
140
140
141
141
fn adjust_span ( map : codemap , sp : span ) -> span {
142
- fn lookup ( pos : file_pos ) -> uint { ret pos. ch ; }
142
+ pure fn lookup ( pos : file_pos ) -> uint { ret pos. ch ; }
143
143
let line = lookup_line ( map, sp. lo , lookup) ;
144
144
alt ( line. fm . substr ) {
145
145
fss_none { sp}
@@ -198,7 +198,8 @@ fn get_line(fm: filemap, line: int) -> str unsafe {
198
198
199
199
fn lookup_byte_offset ( cm : codemap:: codemap , chpos : uint )
200
200
-> { fm : filemap , pos : uint } {
201
- let { fm, line} = lookup_line ( cm, chpos, { |pos| pos. ch } ) ;
201
+ pure fn lookup ( pos : file_pos ) -> uint { ret pos. ch ; }
202
+ let { fm, line} = lookup_line ( cm, chpos, lookup) ;
202
203
let line_offset = fm. lines [ line] . byte - fm. start_pos . byte ;
203
204
let col = chpos - fm. lines [ line] . ch ;
204
205
let col_offset = str:: count_bytes ( * fm. src , line_offset, col) ;
0 commit comments