2 个不稳定版本
0.2.0 | 2020 年 12 月 8 日 |
---|---|
0.1.0 | 2018 年 7 月 30 日 |
#404 在 硬件支持
319 每月下载量
用于 31 个Crates (27 直接)
8KB
likely
likely 是一个Rust crate,用于围绕内建函数 ::std::intrinsic::likely
和 ::std::intrinsic::unlikely
提供宏包装,它们自身是对CPU分支预测器的提示。
这些提示仅在绝大多数情况都满足它们时才应使用。一个典型的例子可能是一个非常不寻常的错误条件,或一个范围中的极端值或异常值。另一个常见场景是处理常见libc函数的返回代码,其中许多函数非常不可能发生(例如,许多此类函数的 EINVAL
)。
请注意,使用这些宏包装需要使用nightly编译。
使用方法。
首先,包含它
要包含它,请将以下内容添加到您的 Cargo.toml
:-
[dependencies]
likely = "^0.1"
在您的crate的 lib.rs
中添加:-
`#![feature(core_intrinsics)]`
...
#[macro_use] extern crate likely;
其次,使用 if
语句使用它
fn example(age: u8)
{
if likely!(age <= 70)
{
println!("Not yet entitled to this welfare benefit")
}
else if unlikely!(age == 99)
{
println!("You are entitled to a birthday card from the Queen for your next birthday")
}
}
许可协议
此项目的许可协议是MIT。