int64_ord_sort Module Subroutine

module subroutine int64_ord_sort(array, work, reverse)

Arguments

Type IntentOptional Attributes Name
integer(kind=int64), intent(inout) :: array(0:)
integer(kind=int64), intent(out), optional :: work(0:)
logical, intent(in), optional :: reverse

Calls

proc~~int64_ord_sort~~CallsGraph proc~int64_ord_sort int64_ord_sort interface~pic_optional pic_optional proc~int64_ord_sort->interface~pic_optional proc~int64_decrease_ord_sort int64_decrease_ord_sort proc~int64_ord_sort->proc~int64_decrease_ord_sort proc~int64_increase_ord_sort int64_increase_ord_sort proc~int64_ord_sort->proc~int64_increase_ord_sort proc~optional_char optional_char interface~pic_optional->proc~optional_char proc~optional_dp optional_dp interface~pic_optional->proc~optional_dp proc~optional_int32 optional_int32 interface~pic_optional->proc~optional_int32 proc~optional_int64 optional_int64 interface~pic_optional->proc~optional_int64 proc~optional_logical optional_logical interface~pic_optional->proc~optional_logical proc~optional_sp optional_sp interface~pic_optional->proc~optional_sp none~merge_sort~17 merge_sort proc~int64_decrease_ord_sort->none~merge_sort~17 none~merge_sort~12 merge_sort proc~int64_increase_ord_sort->none~merge_sort~12 none~calc_min_run~12 calc_min_run none~merge_sort~12->none~calc_min_run~12 none~collapse~12 collapse none~merge_sort~12->none~collapse~12 none~insert_head~12 insert_head none~merge_sort~12->none~insert_head~12 none~insertion_sort~12 insertion_sort none~merge_sort~12->none~insertion_sort~12 none~reverse_segment~12 reverse_segment none~merge_sort~12->none~reverse_segment~12 none~calc_min_run~17 calc_min_run none~merge_sort~17->none~calc_min_run~17 none~collapse~17 collapse none~merge_sort~17->none~collapse~17 none~insert_head~17 insert_head none~merge_sort~17->none~insert_head~17 none~insertion_sort~17 insertion_sort none~merge_sort~17->none~insertion_sort~17 none~reverse_segment~17 reverse_segment none~merge_sort~17->none~reverse_segment~17

Source Code

   module subroutine int64_ord_sort(array, work, reverse)
      integer(int64), intent(inout)         :: array(0:)
      integer(int64), intent(out), optional :: work(0:)
      logical, intent(in), optional :: reverse

      if (pic_optional(reverse, .false.)) then
         call int64_decrease_ord_sort(array, work)
      else
         call int64_increase_ord_sort(array, work)
      end if

   end subroutine int64_ord_sort