|
1 | 1 | #:include "common.fypp" |
| 2 | +#:set IR_KINDS_TYPES = INT_KINDS_TYPES + REAL_KINDS_TYPES |
2 | 3 |
|
3 | 4 | !! Licensing: |
4 | 5 | !! |
@@ -346,29 +347,18 @@ module stdlib_sorting |
346 | 347 | !! sorted data, having O(N) performance on uniformly non-increasing or |
347 | 348 | !! non-decreasing data. |
348 | 349 |
|
349 | | -#:for k1 in INT_KINDS |
| 350 | +#:for k1, t1 in IR_KINDS_TYPES |
350 | 351 | module subroutine ${k1}$_ord_sort( array, work ) |
351 | 352 | !! Version: experimental |
352 | 353 | !! |
353 | | -!! `${k1}$_ord_sort( array )` sorts the input `ARRAY` of type `INTEGER(${k1}$)` |
| 354 | +!! `${k1}$_ord_sort( array )` sorts the input `ARRAY` of type `${t1}$` |
354 | 355 | !! using a hybrid sort based on the `'Rust" sort` algorithm found in `slice.rs` |
355 | | - integer(${k1}$), intent(inout) :: array(0:) |
356 | | - integer(${k1}$), intent(inout), optional :: work(0:) |
| 356 | + ${t1}$, intent(inout) :: array(0:) |
| 357 | + ${t1}$, intent(inout), optional :: work(0:) |
357 | 358 | end subroutine ${k1}$_ord_sort |
358 | 359 |
|
359 | 360 | #:endfor |
360 | 361 |
|
361 | | -#:for k1 in REAL_KINDS |
362 | | - module subroutine ${k1}$_ord_sort( array, work ) |
363 | | - !! Version: experimental |
364 | | -!! |
365 | | -!! `${k1}$_ord_sort( array )` sorts the input `ARRAY` of type `REAL(${k1}$)` |
366 | | -!! using a hybrid sort based on the `'Rust" sort` algorithm found in `slice.rs` |
367 | | - real(${k1}$), intent(inout) :: array(0:) |
368 | | - real(${k1}$), intent(inout), optional :: work(0:) |
369 | | - end subroutine ${k1}$_ord_sort |
370 | | - |
371 | | -#:endfor |
372 | 362 | module subroutine char_ord_sort( array, work ) |
373 | 363 | !! Version: experimental |
374 | 364 | !! |
|
0 commit comments