2 个版本
0.1.1 | 2021 年 9 月 18 日 |
---|---|
0.1.0 | 2021 年 9 月 18 日 |
#2892 在 Rust 模式
每月 146 次下载
用于 4 个 crate (3 个直接)
13KB
180 行
soft_assert
一组宏,如果给定条件为假,则提前返回。类似于标准库中的各种 assert
宏
用法
将以下内容添加到您的 Cargo.toml
[dependencies]
soft_assert = "0.1"
许可证
此项目可根据您的选择使用以下任一许可证
。
lib.rs
:
一组与标准库中的 assert_*
宏类似的宏,但会提前返回而不是引发panic。
示例
use soft_assert::*;
fn not_twenty(x: i32) -> Option<i32> {
// This will return `Option::default()`, which is `None`
soft_assert_ne!(x, 20);
Some(x)
}
fn double_if_greater_than_5(x: i32) -> i32 {
// But here we don't want to return `i32::default()`,
// so we specify a return value.
soft_assert!(x > 5, x);
x * 2
}
fn main() {
assert!(not_twenty(10).is_some());
assert!(not_twenty(20).is_none());
let doubled = double_if_greater_than_5(13);
assert_eq!(doubled, 26);
let not_doubled = double_if_greater_than_5(2);
assert_eq!(not_doubled, 2);
}
此crate是 #![no_std]