qsort_config Subroutine

private recursive subroutine qsort_config(list)

Simple implementation of quicksort algorithm to sort the variable list alphabetically.

Arguments

Type IntentOptional Attributes Name
type(CFG_var_t), intent(inout) :: list(:)

Calls

proc~~qsort_config~~CallsGraph proc~qsort_config qsort_config proc~qsort_config->proc~qsort_config proc~parition_var_list parition_var_list proc~qsort_config->proc~parition_var_list

Called by

proc~~qsort_config~~CalledByGraph proc~qsort_config qsort_config proc~qsort_config->proc~qsort_config proc~cfg_sort CFG_sort proc~cfg_sort->proc~qsort_config proc~cfg_write CFG_write proc~cfg_write->proc~cfg_sort proc~cfg_write_markdown CFG_write_markdown proc~cfg_write_markdown->proc~cfg_sort

Source Code

  recursive subroutine qsort_config(list)
    type(CFG_var_t), intent(inout) :: list(:)
    integer                        :: split_pos

    if (size(list) > 1) then
       call parition_var_list(list, split_pos)
       call qsort_config( list(:split_pos-1) )
       call qsort_config( list(split_pos:) )
    end if
  end subroutine qsort_config