diff options
author | Balazs Varga <balazs.varga.extern@allotropia.de> | 2024-03-13 11:07:10 +0100 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2024-04-15 12:27:58 +0200 |
commit | 34e4e216e93a7cd5d93cae85399746fcb3a9a81c (patch) | |
tree | ea077bfeb7909c8775754a021e1f9a4dbefef778 /include | |
parent | 0ad2652ca77a76aa01693db4bca1b90649d0f598 (diff) |
tdf#126573 Add Excel2021 array function SORT to Calc
TODO/WIP: oasis proposal
More information about how this new function works:
https://support.microsoft.com/en-au/office/sort-function-22f63bd0-ccc8-492f-953d-c20e8e44b86c
https://exceljet.net/functions/sort-function
Note: Move ScSortInfoArray class to sortparam.hxx, which is a more
logical place.
Change-Id: I70e720e93ba0414d54cb3437de0bfa066508fe30
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164778
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/formula/compiler.hxx | 3 | ||||
-rw-r--r-- | include/formula/opcode.hxx | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/include/formula/compiler.hxx b/include/formula/compiler.hxx index 2295dc89c5cb..c004a12cb39b 100644 --- a/include/formula/compiler.hxx +++ b/include/formula/compiler.hxx @@ -511,7 +511,8 @@ #define SC_OPCODE_FOURIER 498 #define SC_OPCODE_RANDBETWEEN_NV 499 #define SC_OPCODE_FILTER 500 -#define SC_OPCODE_STOP_2_PAR 501 /* last function with two or more parameters' OpCode + 1 */ +#define SC_OPCODE_SORT 501 +#define SC_OPCODE_STOP_2_PAR 502 /* last function with two or more parameters' OpCode + 1 */ #define SC_OPCODE_STOP_FUNCTION SC_OPCODE_STOP_2_PAR /* last function's OpCode + 1 */ #define SC_OPCODE_LAST_OPCODE_ID (SC_OPCODE_STOP_FUNCTION - 1) /* last OpCode */ diff --git a/include/formula/opcode.hxx b/include/formula/opcode.hxx index f386b295568b..59ee8c5bd6b9 100644 --- a/include/formula/opcode.hxx +++ b/include/formula/opcode.hxx @@ -507,6 +507,7 @@ enum OpCode : sal_uInt16 ocFourier = SC_OPCODE_FOURIER, ocRandbetweenNV = SC_OPCODE_RANDBETWEEN_NV, ocFilter = SC_OPCODE_FILTER, + ocSort = SC_OPCODE_SORT, // internal stuff ocInternalBegin = SC_OPCODE_INTERNAL_BEGIN, ocTTT = SC_OPCODE_TTT, @@ -986,6 +987,7 @@ inline std::string OpCodeEnumToString(OpCode eCode) case ocFourier: return "Fourier"; case ocRandbetweenNV: return "RandbetweenNV"; case ocFilter: return "Filter"; + case ocSort: return "Sort"; case ocTTT: return "TTT"; case ocDebugVar: return "DebugVar"; case ocDataToken1: return "DataToken1"; |