@@ -69,7 +69,9 @@ struct TypedArenaChunk<T> {
69
69
impl < T > TypedArenaChunk < T > {
70
70
#[ inline]
71
71
unsafe fn new ( capacity : usize ) -> TypedArenaChunk < T > {
72
- TypedArenaChunk { storage : RawVec :: with_capacity ( capacity) }
72
+ TypedArenaChunk {
73
+ storage : RawVec :: with_capacity ( capacity) ,
74
+ }
73
75
}
74
76
75
77
/// Destroys this arena chunk.
@@ -132,7 +134,9 @@ impl<T> TypedArena<T> {
132
134
133
135
unsafe {
134
136
if mem:: size_of :: < T > ( ) == 0 {
135
- self . ptr . set ( intrinsics:: arith_offset ( self . ptr . get ( ) as * mut u8 , 1 ) as * mut T ) ;
137
+ self . ptr
138
+ . set ( intrinsics:: arith_offset ( self . ptr . get ( ) as * mut u8 , 1 )
139
+ as * mut T ) ;
136
140
let ptr = mem:: align_of :: < T > ( ) as * mut T ;
137
141
// Don't drop the object. This `write` is equivalent to `forget`.
138
142
ptr:: write ( ptr, object) ;
@@ -157,7 +161,9 @@ impl<T> TypedArena<T> {
157
161
/// - Zero-length slices
158
162
#[ inline]
159
163
pub fn alloc_slice ( & self , slice : & [ T ] ) -> & mut [ T ]
160
- where T : Copy {
164
+ where
165
+ T : Copy ,
166
+ {
161
167
assert ! ( mem:: size_of:: <T >( ) != 0 ) ;
162
168
assert ! ( slice. len( ) != 0 ) ;
163
169
@@ -321,7 +327,10 @@ impl DroplessArena {
321
327
let ( chunk, mut new_capacity) ;
322
328
if let Some ( last_chunk) = chunks. last_mut ( ) {
323
329
let used_bytes = self . ptr . get ( ) as usize - last_chunk. start ( ) as usize ;
324
- if last_chunk. storage . reserve_in_place ( used_bytes, needed_bytes) {
330
+ if last_chunk
331
+ . storage
332
+ . reserve_in_place ( used_bytes, needed_bytes)
333
+ {
325
334
self . end . set ( last_chunk. end ( ) ) ;
326
335
return ;
327
336
} else {
@@ -357,9 +366,9 @@ impl DroplessArena {
357
366
358
367
let ptr = self . ptr . get ( ) ;
359
368
// Set the pointer past ourselves
360
- self . ptr . set ( intrinsics :: arith_offset (
361
- self . ptr . get ( ) , mem:: size_of :: < T > ( ) as isize
362
- ) as * mut u8 ) ;
369
+ self . ptr . set (
370
+ intrinsics :: arith_offset ( self . ptr . get ( ) , mem:: size_of :: < T > ( ) as isize ) as * mut u8 ,
371
+ ) ;
363
372
// Write into uninitialized memory.
364
373
ptr:: write ( ptr as * mut T , object) ;
365
374
& mut * ( ptr as * mut T )
@@ -375,7 +384,9 @@ impl DroplessArena {
375
384
/// - Zero-length slices
376
385
#[ inline]
377
386
pub fn alloc_slice < T > ( & self , slice : & [ T ] ) -> & mut [ T ]
378
- where T : Copy {
387
+ where
388
+ T : Copy ,
389
+ {
379
390
assert ! ( !mem:: needs_drop:: <T >( ) ) ;
380
391
assert ! ( mem:: size_of:: <T >( ) != 0 ) ;
381
392
assert ! ( slice. len( ) != 0 ) ;
@@ -391,7 +402,8 @@ impl DroplessArena {
391
402
unsafe {
392
403
let arena_slice = slice:: from_raw_parts_mut ( self . ptr . get ( ) as * mut T , slice. len ( ) ) ;
393
404
self . ptr . set ( intrinsics:: arith_offset (
394
- self . ptr . get ( ) , ( slice. len ( ) * mem:: size_of :: < T > ( ) ) as isize
405
+ self . ptr . get ( ) ,
406
+ ( slice. len ( ) * mem:: size_of :: < T > ( ) ) as isize ,
395
407
) as * mut u8 ) ;
396
408
arena_slice. copy_from_slice ( slice) ;
397
409
arena_slice
@@ -456,8 +468,9 @@ mod tests {
456
468
457
469
let arena = Wrap ( TypedArena :: new ( ) ) ;
458
470
459
- let result =
460
- arena. alloc_outer ( || Outer { inner : arena. alloc_inner ( || Inner { value : 10 } ) } ) ;
471
+ let result = arena. alloc_outer ( || Outer {
472
+ inner : arena. alloc_inner ( || Inner { value : 10 } ) ,
473
+ } ) ;
461
474
462
475
assert_eq ! ( result. inner. value, 10 ) ;
463
476
}
0 commit comments