Skip to content

Commit a5a89b6

Browse files
committed
Insert into qtree
1 parent 17bcdd2 commit a5a89b6

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

src/cache.rs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,15 @@ where
133133
}
134134
};
135135
let value = func(input.retrack(sink, bump));
136-
cache.0.write().values.push(value.clone());
136+
let list = std::mem::take(&mut *list.lock());
137+
let mut borrow = cache.0.write();
138+
let i = borrow.values.len();
139+
borrow
140+
.entries
141+
.entry(key)
142+
.or_default()
143+
.insert(list.immutable, (i, list.mutable));
144+
borrow.values.push(value.clone());
137145
return value;
138146
}
139147

0 commit comments

Comments
 (0)