#average #primitive-integer #mean #extension

no-std midpoint

扩展特质,提供中点实现[目前仅限于原始整数]

6个版本

0.1.5 2022年2月1日
0.1.4 2022年2月1日
0.1.3 2022年1月31日

#787 in 数学


2个Crates中使用(通过get_len_base_10_as_usize_…

MIT/Apache

26KB
356

中点二位函数

二位中点函数是返回两个值平均值的函数,例如有符号或无符号整数类型的值、浮点类型的值或指针类型的值。

此库提供了多种二位中点函数的实现[目前仅限于原始整数],具有不同的特性(性能、通用性和舍入行为),而lib的GitHub仓库提供了设计文档、测试、可运行的基准测试和预先生成的criterion.rs性能报告

示例

Cargo.toml

[dependencies]
midpoint = { version = "0.1.5" }

# Read more about features here: https://doc.rust-lang.net.cn/cargo/reference/features.html#dependency-features
[features]
all = ["const_trait_impl", "const_fn_trait_bound", "unchecked_math", "const_inherent_unchecked_arith"]
const_trait_impl = ["midpoint/const_trait_impl"]
const_fn_trait_bound = ["midpoint/const_fn_trait_bound"]
unchecked_math = ["midpoint/unchecked_math"]
const_inherent_unchecked_arith = ["midpoint/const_inherent_unchecked_arith"]

src/main.rs

use midpoint::MidpointViaPrimitivePromotionExt;

// With features = ["all"] or 
// features = ["const_trait_impl", ...] the call can be
// performed in constant context, such as const fn
let result: i32 = (-7).midpoint_via_primitive_promotion(&-2);
assert_eq!(result, -4);

许可证

根据您的选择,受Apache许可证第2版MIT许可证的许可。
除非您明确声明,否则任何有意提交以包含在此crate中的贡献,根据Apache-2.0许可证定义,将按上述方式双重许可,而不附加任何其他条款或条件。

依赖项

~27KB