LICENSE LICENSE Documentation Crates.io Version

This crates brings likely and unlikely branch prediction hints to stable rust ```rust use likely_stable::{likely,unlikely}; use rand::random;

if likely(random::() > 10) { println!("likely!") } else { println!("unlikely!") } ```

It also provides if_likely and if_unlikely for branch prediction for if let statements. ```rust use likelystable::iflikely; use rand::random;

let v = Some(random()).filter(|v:&i32| *v > 10);

if_likely!{let Some(v) = v => { println!("likely!") } else { println!("unlikely!") }}; ```

Moreover traits LikelyBool, LikelyOption and LikelyResult provides likely and unlikely versions of the methods commonly used for types bool, Option and Result ```rust use likely_stable::LikelyOption; use rand::random;

let v = Some(random()).filter(|v:&i32| *v > 10);

v.maporelse_likely( || println!("unlikely"), |v| println!("likely {}",v)); ```

Usage

Add this to your Cargo.toml:

toml [dependencies] likely_stable = "0.1"