From 91e2ac1994442bb1da4ae56845f587aea8bf950d Mon Sep 17 00:00:00 2001 From: Evan Burkey Date: Mon, 21 Mar 2022 14:32:31 -0700 Subject: [PATCH] add clamp_int --- include/lfmath.h | 1 + src/lfmath.c | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/include/lfmath.h b/include/lfmath.h index 56bf2d4..a87189c 100644 --- a/include/lfmath.h +++ b/include/lfmath.h @@ -3,6 +3,7 @@ int max_int(int a, int b); int min_int(int a, int b); +int clamp_int(int i, int low, int high); int binstr_to_int(const char *s); #endif // LIBFLINT_H_MATH diff --git a/src/lfmath.c b/src/lfmath.c index cea4835..a4f4414 100644 --- a/src/lfmath.c +++ b/src/lfmath.c @@ -16,6 +16,15 @@ int min_int(int a, int b) { return b; } +int clamp_int(int i, int low, int high) { + if (i > high) { + return high; + } else if (i < low) { + return low; + } + return i; +} + int binstr_to_int(const char *s) { int n = 0, m = 1; for (int i = (int)strlen(s) - 1; i >= 0; --i) {