#![feature(test)] | |
extern crate test; | |
use std::io::Write; | |
use test::Bencher; | |
use uuid::Uuid; | |
#[bench] | |
fn bench_hyphen(b: &mut Bencher) { | |
let uuid = Uuid::parse_str("F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4").unwrap(); | |
b.iter(|| { | |
let mut buffer = [0_u8; 36]; | |
write!(&mut buffer as &mut [_], "{:x}", uuid.to_hyphenated()).unwrap(); | |
test::black_box(buffer); | |
}); | |
} | |
#[bench] | |
fn bench_simple(b: &mut Bencher) { | |
let uuid = Uuid::parse_str("F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4").unwrap(); | |
b.iter(|| { | |
let mut buffer = [0_u8; 32]; | |
write!(&mut buffer as &mut [_], "{:x}", uuid.to_simple()).unwrap(); | |
test::black_box(buffer); | |
}) | |
} | |
#[bench] | |
fn bench_urn(b: &mut Bencher) { | |
let uuid = Uuid::parse_str("F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4").unwrap(); | |
b.iter(|| { | |
let mut buffer = [0_u8; 36 + 9]; | |
write!(&mut buffer as &mut [_], "{:x}", uuid.to_urn()).unwrap(); | |
test::black_box(buffer); | |
}) | |
} | |
#[bench] | |
fn bench_encode_hyphen(b: &mut Bencher) { | |
let uuid = Uuid::parse_str("F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4").unwrap(); | |
b.iter(|| { | |
let mut buffer = [0_u8; 36]; | |
uuid.to_hyphenated().encode_lower(&mut buffer); | |
test::black_box(buffer); | |
}); | |
} | |
#[bench] | |
fn bench_encode_simple(b: &mut Bencher) { | |
let uuid = Uuid::parse_str("F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4").unwrap(); | |
b.iter(|| { | |
let mut buffer = [0_u8; 32]; | |
uuid.to_simple().encode_lower(&mut buffer); | |
test::black_box(buffer); | |
}) | |
} | |
#[bench] | |
fn bench_encode_urn(b: &mut Bencher) { | |
let uuid = Uuid::parse_str("F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4").unwrap(); | |
b.iter(|| { | |
let mut buffer = [0_u8; 36 + 9]; | |
uuid.to_urn().encode_lower(&mut buffer); | |
test::black_box(buffer); | |
}) | |
} |