switch interner to use arena

This commit is contained in:
Aleksey Kladov
2019-01-08 15:53:32 +03:00
parent 5603237c06
commit d4c8310d05
6 changed files with 23 additions and 40 deletions

View File

@@ -61,6 +61,9 @@ pub trait ArenaId {
}
impl<ID: ArenaId, T> Arena<ID, T> {
pub fn len(&self) -> usize {
self.data.len()
}
pub fn alloc(&mut self, value: T) -> ID {
let id = RawId(self.data.len() as u32);
self.data.push(value);