aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPatrick Walton <[email protected]>2011-03-18 15:18:45 -0700
committerPatrick Walton <[email protected]>2011-03-18 15:18:45 -0700
commit47d650e25bbc9c6ce4a062142f9682b8010bb4da (patch)
treeae7381938f0f4da05ec27bbd6adb386670a8774b /src
parentrustc: Get type params from the item when translating native items (diff)
downloadrust-47d650e25bbc9c6ce4a062142f9682b8010bb4da.tar.xz
rust-47d650e25bbc9c6ce4a062142f9682b8010bb4da.zip
rustc: Box the tuples returned by hashmap.items() for now since we don't have alias iterators yet
Diffstat (limited to 'src')
-rw-r--r--src/comp/middle/trans.rs2
-rw-r--r--src/lib/map.rs6
2 files changed, 4 insertions, 4 deletions
diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs
index f06789f4..90a26cc5 100644
--- a/src/comp/middle/trans.rs
+++ b/src/comp/middle/trans.rs
@@ -5698,7 +5698,7 @@ fn find_main_fn(@crate_ctxt cx) -> ValueRef {
auto e = sep() + "main";
let ValueRef v = C_nil();
let uint n = 0u;
- for each (tup(str,ValueRef) i in cx.item_names.items()) {
+ for each (@tup(str,ValueRef) i in cx.item_names.items()) {
if (_str.ends_with(i._0, e)) {
n += 1u;
v = i._1;
diff --git a/src/lib/map.rs b/src/lib/map.rs
index 61d5ccf6..f22faaca 100644
--- a/src/lib/map.rs
+++ b/src/lib/map.rs
@@ -14,7 +14,7 @@ abs state type hashmap[K, V] = state obj {
fn find(&K key) -> option.t[V];
fn remove(&K key) -> option.t[V];
fn rehash();
- iter items() -> tup(K,V);
+ iter items() -> @tup(K,V);
};
fn mk_hashmap[K, V](&hashfn[K] hasher, &eqfn[K] eqer) -> hashmap[K, V] {
@@ -216,11 +216,11 @@ fn mk_hashmap[K, V](&hashfn[K] hasher, &eqfn[K] eqer) -> hashmap[K, V] {
bkts = newbkts;
}
- iter items() -> tup(K,V) {
+ iter items() -> @tup(K,V) {
for (bucket[K,V] b in bkts) {
alt (b) {
case(some[K,V](?k,?v)) {
- put tup(k,v);
+ put @tup(k,v);
}
case (_) { }
}