@@ -28,6 +28,8 @@ use crate::{BooleanBufferBuilder, MutableBuffer, NullBuffer};
28
28
/// This optimization is **very** important for the performance as it avoids
29
29
/// allocating memory for the null buffer when there are no nulls.
30
30
///
31
+ /// See [`Self::allocated_size`] to get the current memory allocated by the builder.
32
+ ///
31
33
/// # Example
32
34
/// ```
33
35
/// # use arrow_buffer::NullBufferBuilder;
@@ -136,16 +138,6 @@ impl NullBufferBuilder {
136
138
}
137
139
}
138
140
139
- /// Returns the capacity of the buffer
140
- #[ inline]
141
- pub fn capacity ( & self ) -> usize {
142
- if let Some ( ref buf) = self . bitmap_builder {
143
- buf. capacity ( )
144
- } else {
145
- 0
146
- }
147
- }
148
-
149
141
/// Gets a bit in the buffer at `index`
150
142
#[ inline]
151
143
pub fn is_valid ( & self , index : usize ) -> bool {
@@ -256,7 +248,7 @@ mod tests {
256
248
builder. append_n_nulls ( 2 ) ;
257
249
builder. append_n_non_nulls ( 2 ) ;
258
250
assert_eq ! ( 6 , builder. len( ) ) ;
259
- assert_eq ! ( 512 , builder. capacity ( ) ) ;
251
+ assert_eq ! ( 512 , builder. allocated_size ( ) ) ;
260
252
261
253
let buf = builder. finish ( ) . unwrap ( ) ;
262
254
assert_eq ! ( & [ 0b110010_u8 ] , buf. validity( ) ) ;
@@ -269,7 +261,7 @@ mod tests {
269
261
builder. append_n_nulls ( 2 ) ;
270
262
builder. append_slice ( & [ false , false , false ] ) ;
271
263
assert_eq ! ( 6 , builder. len( ) ) ;
272
- assert_eq ! ( 512 , builder. capacity ( ) ) ;
264
+ assert_eq ! ( 512 , builder. allocated_size ( ) ) ;
273
265
274
266
let buf = builder. finish ( ) . unwrap ( ) ;
275
267
assert_eq ! ( & [ 0b0_u8 ] , buf. validity( ) ) ;
@@ -282,7 +274,7 @@ mod tests {
282
274
builder. append_n_non_nulls ( 2 ) ;
283
275
builder. append_slice ( & [ true , true , true ] ) ;
284
276
assert_eq ! ( 6 , builder. len( ) ) ;
285
- assert_eq ! ( 0 , builder. capacity ( ) ) ;
277
+ assert_eq ! ( 0 , builder. allocated_size ( ) ) ;
286
278
287
279
let buf = builder. finish ( ) ;
288
280
assert ! ( buf. is_none( ) ) ;
@@ -326,14 +318,14 @@ mod tests {
326
318
builder. truncate ( 20 ) ;
327
319
assert_eq ! ( builder. as_slice( ) , None ) ;
328
320
assert_eq ! ( builder. len( ) , 16 ) ;
329
- assert_eq ! ( builder. capacity ( ) , 0 ) ;
321
+ assert_eq ! ( builder. allocated_size ( ) , 0 ) ;
330
322
builder. truncate ( 14 ) ;
331
323
assert_eq ! ( builder. as_slice( ) , None ) ;
332
324
assert_eq ! ( builder. len( ) , 14 ) ;
333
325
builder. append_null ( ) ;
334
326
builder. append_non_null ( ) ;
335
327
assert_eq ! ( builder. as_slice( ) . unwrap( ) , & [ 0xFF , 0b10111111 ] ) ;
336
- assert_eq ! ( builder. capacity ( ) , 512 ) ;
328
+ assert_eq ! ( builder. allocated_size ( ) , 512 ) ;
337
329
}
338
330
339
331
#[ test]
@@ -343,6 +335,6 @@ mod tests {
343
335
builder. append_n_nulls ( 2 ) ;
344
336
assert_eq ! ( builder. len( ) , 2 ) ;
345
337
builder. truncate ( 1 ) ;
346
- assert_eq ! ( builder. len( ) , 1 ) ;
338
+ assert_eq ! ( builder. len( ) , 2 ) ;
347
339
}
348
340
}
0 commit comments