From a345c6cd24222bcca70d6fbbdce88f65b4dda856 Mon Sep 17 00:00:00 2001 From: Justin Lin Date: Tue, 9 Feb 2021 10:44:42 +0800 Subject: [PATCH] add every --- src/experimental/note.md | 2 ++ src/util/every.scad | 5 +++++ 2 files changed, 7 insertions(+) create mode 100644 src/util/every.scad diff --git a/src/experimental/note.md b/src/experimental/note.md index d949d99a..5504a5f3 100644 --- a/src/experimental/note.md +++ b/src/experimental/note.md @@ -12,4 +12,6 @@ New modules/functions - `angles_between` - `spherical_coordinate` +- `util/every` - `util/some` + diff --git a/src/util/every.scad b/src/util/every.scad new file mode 100644 index 00000000..652bc441 --- /dev/null +++ b/src/util/every.scad @@ -0,0 +1,5 @@ +function _every(lt, assert_func, leng, i = 0) = + i == leng ? true : + assert_func(lt[i]) ? _every(lt, assert_func, leng, i + 1) : false; + +function every(lt, assert_func) = _every(lt, assert_func, len(lt)); \ No newline at end of file