// xfail-test use std; import std::map::{map, hashmap, int_hash}; class keys> : iter::base_iter { let map: M; new(map: M) { self.map = map; } fn each(blk: fn(K) -> bool) { self.map.each(|k, _v| blk(k) ) } fn size_hint() -> option { some(self.map.size()) } fn eachi(blk: fn(uint, K) -> bool) { iter::eachi(self, blk) } } fn main() { let m = int_hash(); m.insert(1, 2); m.insert(3, 4); assert iter::to_vec(keys(m)) == ~[1, 3]; }