luna-utils

luna-utils 是面向 Luna-Flow 项目的小型工具包。它提供数组辅助函数和比较辅助函数,其数值约束来自 luna-generic 的 trait,因此适用于任何实现了所需结构的类型。

公开函数

本包只导出函数,不定义自己的类型或 trait。

函数约束行为
arr_sumAddMonoid元素之和;空数组返回 zero()。
arr_abs_sumNum + Compare元素绝对值之和。
zero_arrAddMonoid长度为 n、以 zero() 填充的数组。
arr_max, arr_minCompare最大或最小元素;空数组时 panic。
findEq某个值首次出现的下标,未找到时为 None。
reverse无元素逆序排列的新数组。
reverse_inplace无原地反转数组。
sameEq所有元素是否都等于第一个元素;空数组时 panic。
same_toEq所有元素是否都等于给定的样本值。
map_same, map_same_to结果类型满足 Eq对映射后的数组应用 same 与 same_to。
clampCompare将值限制在从 min 到 max 的闭区间内。
is_betweenCompare值是否位于从 min 到 max 的闭区间内。

接口文件 pkg.generated.mbti 是签名的权威清单,自动生成的 API 文档见 mooncakes.io。

模块

包 Luna-Flow/luna-utils 有两个源文件,本手册将它们作为两个模块来说明:

参与贡献

代码风格、命名、提交与审查规则见贡献规范。