#![feature(test)] #![warn( clippy::all, clippy::cargo, clippy::missing_docs_in_private_items, clippy::pedantic, clippy::nursery, missing_docs )] mod checked { extern crate test; use self::test::{black_box, Bencher}; #[bench] fn expect_option(bencher: &mut Bencher) { let option = Some("test"); bencher.iter(|| { for _ in 0..1000 { black_box(black_box(option).expect("")); } }); } #[bench] fn expect_result(bencher: &mut test::Bencher) { let result: Result<_, ()> = Ok("test"); bencher.iter(|| { for _ in 0..1000 { black_box(black_box(result).expect("")); } }); } #[bench] fn unwrap_option(bencher: &mut test::Bencher) { let option = Some("test"); bencher.iter(|| { for _ in 0..1000 { black_box(black_box(option).unwrap()); } }); } #[bench] fn unwrap_result(bencher: &mut test::Bencher) { let result: Result<_, ()> = Ok("test"); bencher.iter(|| { for _ in 0..1000 { #[allow(clippy::unwrap_used)] black_box(black_box(result).unwrap()); } }); } } mod unchecked { extern crate test; use self::test::{black_box, Bencher}; use unchecked_unwrap::UncheckedUnwrap; #[bench] fn expect_option(bencher: &mut Bencher) { let option = Some("test"); bencher.iter(|| { for _ in 0..1000 { unsafe { black_box(black_box(option).unchecked_expect("")); } } }); } #[bench] fn expect_result(bencher: &mut Bencher) { let result: Result<_, ()> = Ok("test"); bencher.iter(|| { for _ in 0..1000 { unsafe { black_box(black_box(result).unchecked_expect("")); } } }); } #[bench] fn unwrap_option(bencher: &mut Bencher) { let option = Some("test"); bencher.iter(|| { for _ in 0..1000 { unsafe { black_box(black_box(option).unchecked_unwrap()); } } }); } #[bench] fn unwrap_result(bencher: &mut Bencher) { let result: Result<_, ()> = Ok("test"); bencher.iter(|| { for _ in 0..1000 { unsafe { black_box(black_box(result).unchecked_unwrap()); } } }); } }