浏览代码

Add clamp function

Jacob Kiesel 8 年之前
父节点
当前提交
28633b7e6d
共有 1 个文件被更改,包括 7 次插入0 次删除
  1. 7 0
      src/lib.rs

+ 7 - 0
src/lib.rs

@@ -109,3 +109,10 @@ pub mod traits {
 pub mod rational {
     pub use num_rational::*;
 }
+
+pub fn clamp<T: PartialOrd + Copy>(input: T, min: T, max: T) -> T {
+    debug_assert!(min < max, "min must be less than max");
+    if input < min {min}
+    else if input > max {max}
+    else {input}
+}