aboutsummaryrefslogtreecommitdiff
path: root/src/array.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2018-09-24 12:04:26 +0100
committergingerBill <bill@gingerbill.org>2018-09-24 12:04:26 +0100
commit1a18481d8ba01e844f9d16479c6de0d06157e685 (patch)
tree7e7be4b687bb1f4d35e0c873ed86f7ffbc9835b0 /src/array.cpp
parent28c61c0f5d3faa6dfa55ffe15a3243d7e2083b58 (diff)
Fix context assignment with selector expressions
Diffstat (limited to 'src/array.cpp')
-rw-r--r--src/array.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/array.cpp b/src/array.cpp
index a6c9396fb..16418d58f 100644
--- a/src/array.cpp
+++ b/src/array.cpp
@@ -45,6 +45,16 @@ template <typename T> void array_ordered_remove (Array<T> *array, isize index);
template <typename T> void array_unordered_remove(Array<T> *array, isize index);
+template <typename T>
+void array_copy(Array<T> *array, Array<T> const &data, isize offset) {
+ gb_memmove(array->data+offset, data.data, gb_size_of(T)*data.count);
+}
+template <typename T>
+void array_copy(Array<T> *array, Array<T> const &data, isize offset, isize count) {
+ gb_memmove(array->data+offset, data.data, gb_size_of(T)*gb_min(data.count, count));
+}
+
+
template <typename T>
T *array_end_ptr(Array<T> *array) {