diff options
author | Sergei Golubchik <sergii@pisem.net> | 2013-10-18 12:35:22 -0700 |
---|---|---|
committer | Sergei Golubchik <sergii@pisem.net> | 2013-10-18 12:35:22 -0700 |
commit | 3098b6cf5b8630956ccd854d41480eba81eeb77d (patch) | |
tree | 2da4d9f5a2f89163c339d1a32f8e33f964c86662 /sql/sql_array.h | |
parent | b221ec6529129bad5958ab79a44c522fb8cc2545 (diff) | |
download | mariadb-git-3098b6cf5b8630956ccd854d41480eba81eeb77d.tar.gz |
qsort2, pop, push methods for Dynamic_array<>
Diffstat (limited to 'sql/sql_array.h')
-rw-r--r-- | sql/sql_array.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/sql/sql_array.h b/sql/sql_array.h index 18f1fbd9f2f..245cfe954f8 100644 --- a/sql/sql_array.h +++ b/sql/sql_array.h @@ -130,6 +130,16 @@ public: return (insert_dynamic(&array, (uchar*)&el)); } + bool push(Elem &el) + { + return append(el); + } + + Elem *pop() + { + return (Elem*)pop_dynamic(&array); + } + size_t elements() { return array.elements; @@ -168,6 +178,12 @@ public: { my_qsort(array.buffer, array.elements, sizeof(Elem), (qsort_cmp)cmp_func); } + + typedef int (*CMP_FUNC2)(const Elem *el1, const Elem *el2, void *); + void sort(CMP_FUNC2 cmp_func, void *data) + { + my_qsort2(array.buffer, array.elements, sizeof(Elem), (qsort2_cmp)cmp_func, data); + } }; /* |