Skip to content

Commit 093bcf2

Browse files
committed
merge impl_arena_allocatable & declare_arena
1 parent 6aff92a commit 093bcf2

File tree

1 file changed

+10
-16
lines changed

1 file changed

+10
-16
lines changed

src/librustc/arena.rs

Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,16 @@ macro_rules! declare_arena {
187187
drop: DropArena,
188188
$($name: arena_for_type!($a[$ty]),)*
189189
}
190+
191+
$(
192+
impl ArenaAllocatable for $ty {}
193+
unsafe impl<$tcx> ArenaField<$tcx> for $ty {
194+
#[inline]
195+
fn arena<'a>(_arena: &'a Arena<$tcx>) -> Option<&'a TypedArena<Self>> {
196+
which_arena_for_type!($a[&_arena.$name])
197+
}
198+
}
199+
)*
190200
}
191201
}
192202

@@ -202,24 +212,8 @@ macro_rules! which_arena_for_type {
202212
};
203213
}
204214

205-
macro_rules! impl_arena_allocatable {
206-
([], [$($a:tt $name:ident: $ty:ty,)*], $tcx:lifetime) => {
207-
$(
208-
impl ArenaAllocatable for $ty {}
209-
unsafe impl<$tcx> ArenaField<$tcx> for $ty {
210-
#[inline]
211-
fn arena<'a>(_arena: &'a Arena<$tcx>) -> Option<&'a TypedArena<Self>> {
212-
which_arena_for_type!($a[&_arena.$name])
213-
}
214-
}
215-
)*
216-
}
217-
}
218-
219215
arena_types!(declare_arena, [], 'tcx);
220216

221-
arena_types!(impl_arena_allocatable, [], 'tcx);
222-
223217
#[marker]
224218
pub trait ArenaAllocatable {}
225219

0 commit comments

Comments
 (0)