@@ -162,3 +162,60 @@ fn write_u8_min(bh: &mut Bencher) {
162162 black_box ( format ! ( "{}" , black_box( u8 :: MIN ) ) ) ;
163163 } ) ;
164164}
165+
166+ #[ bench]
167+ fn write_10ints_bin ( bh : & mut Bencher ) {
168+ bh. iter ( || {
169+ black_box ( format ! ( "{:b}" , black_box( u8 :: MIN ) ) ) ;
170+ black_box ( format ! ( "{:b}" , black_box( i8 :: MIN ) ) ) ;
171+ black_box ( format ! ( "{:b}" , black_box( i8 :: MAX ) ) ) ;
172+
173+ black_box ( format ! ( "{:b}" , black_box( u32 :: MIN ) ) ) ;
174+ black_box ( format ! ( "{:b}" , black_box( i32 :: MIN ) ) ) ;
175+ black_box ( format ! ( "{:b}" , black_box( i32 :: MAX ) ) ) ;
176+
177+ black_box ( format ! ( "{:b}" , black_box( u64 :: MIN ) ) ) ;
178+ black_box ( format ! ( "{:b}" , black_box( i64 :: MIN ) ) ) ;
179+ black_box ( format ! ( "{:b}" , black_box( i64 :: MAX ) ) ) ;
180+
181+ black_box ( format ! ( "{:b}" , black_box( 42_usize ) ) ) ;
182+ } ) ;
183+ }
184+
185+ #[ bench]
186+ fn write_10ints_oct ( bh : & mut Bencher ) {
187+ bh. iter ( || {
188+ black_box ( format ! ( "{:o}" , black_box( u8 :: MIN ) ) ) ;
189+ black_box ( format ! ( "{:o}" , black_box( i8 :: MIN ) ) ) ;
190+ black_box ( format ! ( "{:o}" , black_box( i8 :: MAX ) ) ) ;
191+
192+ black_box ( format ! ( "{:o}" , black_box( u32 :: MIN ) ) ) ;
193+ black_box ( format ! ( "{:o}" , black_box( i32 :: MIN ) ) ) ;
194+ black_box ( format ! ( "{:o}" , black_box( i32 :: MAX ) ) ) ;
195+
196+ black_box ( format ! ( "{:o}" , black_box( u64 :: MIN ) ) ) ;
197+ black_box ( format ! ( "{:o}" , black_box( i64 :: MIN ) ) ) ;
198+ black_box ( format ! ( "{:o}" , black_box( i64 :: MAX ) ) ) ;
199+
200+ black_box ( format ! ( "{:o}" , black_box( 42_usize ) ) ) ;
201+ } ) ;
202+ }
203+
204+ #[ bench]
205+ fn write_10ints_hex ( bh : & mut Bencher ) {
206+ bh. iter ( || {
207+ black_box ( format ! ( "{:x}" , black_box( u8 :: MIN ) ) ) ;
208+ black_box ( format ! ( "{:x}" , black_box( i8 :: MIN ) ) ) ;
209+ black_box ( format ! ( "{:x}" , black_box( i8 :: MAX ) ) ) ;
210+
211+ black_box ( format ! ( "{:x}" , black_box( u32 :: MIN ) ) ) ;
212+ black_box ( format ! ( "{:x}" , black_box( i32 :: MIN ) ) ) ;
213+ black_box ( format ! ( "{:x}" , black_box( i32 :: MAX ) ) ) ;
214+
215+ black_box ( format ! ( "{:x}" , black_box( u64 :: MIN ) ) ) ;
216+ black_box ( format ! ( "{:x}" , black_box( i64 :: MIN ) ) ) ;
217+ black_box ( format ! ( "{:x}" , black_box( i64 :: MAX ) ) ) ;
218+
219+ black_box ( format ! ( "{:x}" , black_box( 42_usize ) ) ) ;
220+ } ) ;
221+ }
0 commit comments