summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorAndreas Haas <Hinsbart@users.noreply.github.com>2017-10-10 20:31:48 +0200
committerGitHub <noreply@github.com>2017-10-10 20:31:48 +0200
commit1d8a546a07a7d7a47d788b5f4156bd54ce48211c (patch)
treef6bb80833d23fb3d52669f7fbcdfaa8d971db5cf /core
parent547cc8b7abba1543bf211163cfc8bcb102c158c0 (diff)
parent2f173a67abebd14805d6f7c44db2e8b5c4b5cf83 (diff)
Merge pull request #11919 from Toizi/array_sort_ref
Array::sort/invert now return reference to Array
Diffstat (limited to 'core')
-rw-r--r--core/array.cpp11
-rw-r--r--core/array.h6
2 files changed, 10 insertions, 7 deletions
diff --git a/core/array.cpp b/core/array.cpp
index 30184a002e..171c11776c 100644
--- a/core/array.cpp
+++ b/core/array.cpp
@@ -233,9 +233,10 @@ struct _ArrayVariantSort {
}
};
-void Array::sort() {
+Array &Array::sort() {
_p->array.sort_custom<_ArrayVariantSort>();
+ return *this;
}
struct _ArrayVariantSortCustom {
@@ -253,19 +254,21 @@ struct _ArrayVariantSortCustom {
return res;
}
};
-void Array::sort_custom(Object *p_obj, const StringName &p_function) {
+Array &Array::sort_custom(Object *p_obj, const StringName &p_function) {
- ERR_FAIL_NULL(p_obj);
+ ERR_FAIL_NULL_V(p_obj, *this);
SortArray<Variant, _ArrayVariantSortCustom> avs;
avs.compare.obj = p_obj;
avs.compare.func = p_function;
avs.sort(_p->array.ptr(), _p->array.size());
+ return *this;
}
-void Array::invert() {
+Array &Array::invert() {
_p->array.invert();
+ return *this;
}
void Array::push_front(const Variant &p_value) {
diff --git a/core/array.h b/core/array.h
index 8a647dd13b..2c29103108 100644
--- a/core/array.h
+++ b/core/array.h
@@ -68,9 +68,9 @@ public:
Variant front() const;
Variant back() const;
- void sort();
- void sort_custom(Object *p_obj, const StringName &p_function);
- void invert();
+ Array &sort();
+ Array &sort_custom(Object *p_obj, const StringName &p_function);
+ Array &invert();
int find(const Variant &p_value, int p_from = 0) const;
int rfind(const Variant &p_value, int p_from = -1) const;