$save nolist /* *============================================================================ * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE * * Permission to use for any purpose, modify, copy, and make enhancements * and derivative works of the software is granted if attribution is given to * R.M. Gillmore, dba the ACME Software Deli, as the author * * While the ACME Software Deli does not work for money, there is nonetheless * a significant amount of work involved. The ACME Software Deli maintains the * rights to all code written, though it may be used and distributed as long as * the following conditions are maintained. * * 1. The copyright statement at the top of each code block is maintained in * your distribution. * 2. You do not identify yourself as the ACME Software Deli * 3. Any changes made to the software are sent to the ACME Software Deli *============================================================================ */ /* * $Id: srtFuncs.ext 1157 2025-05-05 00:35:39Z rmgillmore $ */ /* * Tue 11 Sep 02:16 pm 2012 * rmg Starting stages of implementation */ $if not SORT_FUNCTIONS_INCLUDED $set ( SORT_FUNCTIONS_INCLUDED ) declare callbackStructType literally ' structure ( leftPtr pointer, rightPtr pointer, resultsPtr pointer )'; declare byteSortType literally '0', wordSortType literally '1', integerSortType literally '2', dwordSortType literally '3', pointerSortType literally '4', stringSortType literally '5'; $if not SORT_FUNCTIONS_IMPLEMENTATION combSort: procedure ( arrayPtr, arrayLength, arrayType, compareFuncPtr ) external; declare arrayPtr pointer, arrayLength integer, arrayType word, compareFuncPtr pointer; end combSort; gnomeSort: procedure ( arrayPtr, arrayLength, arrayType, compareFuncPtr ) external; declare arrayPtr pointer, arrayLength integer, arrayType word, compareFuncPtr pointer; end gnomeSort; bubbleSort: procedure ( arrayPtr, arrayLength, arrayType, compareFuncPtr ) external; declare arrayPtr pointer, arrayLength integer, arrayType word, compareFuncPtr pointer; end bubbleSort; sortProc: procedure ( PTR, COUNT, RECSIZE, KEYINDEX ) external; declare PTR pointer, ( COUNT, RECSIZE, KEYINDEX ) word; end sortProc; $endif $endif $restore