From 579b1800534fa08950278169c45db4b3be09b42c Mon Sep 17 00:00:00 2001 From: Jacques Lucke Date: Mon, 20 Jul 2020 13:02:10 +0200 Subject: BLI: add Vector/Array.fill methods --- source/blender/blenlib/BLI_array.hh | 8 ++++++++ source/blender/blenlib/BLI_vector.hh | 8 ++++++++ 2 files changed, 16 insertions(+) (limited to 'source/blender/blenlib') diff --git a/source/blender/blenlib/BLI_array.hh b/source/blender/blenlib/BLI_array.hh index c30893f1337..871038d7d85 100644 --- a/source/blender/blenlib/BLI_array.hh +++ b/source/blender/blenlib/BLI_array.hh @@ -268,6 +268,14 @@ class Array { return size_ == 0; } + /** + * Copies the given value to every element in the array. + */ + void fill(const T &value) const + { + initialized_fill_n(data_, size_, value); + } + /** * Get a pointer to the beginning of the array. */ diff --git a/source/blender/blenlib/BLI_vector.hh b/source/blender/blenlib/BLI_vector.hh index 66de8d2fbd1..11bb00c3f8d 100644 --- a/source/blender/blenlib/BLI_vector.hh +++ b/source/blender/blenlib/BLI_vector.hh @@ -702,6 +702,14 @@ class Vector { return this->first_index_of_try(value) != -1; } + /** + * Copies the given value to every element in the vector. + */ + void fill(const T &value) const + { + initialized_fill_n(begin_, this->size(), value); + } + /** * Get access to the underlying array. */ -- cgit v1.2.3