is_passed Function

private pure function is_passed(self, switch, position)

Check if a CLA has been passed.

Type Bound

command_line_arguments_group

Arguments

Type IntentOptional Attributes Name
class(command_line_arguments_group), intent(in) :: self

CLAsG data.

character(len=*), intent(in), optional :: switch

Switch name.

integer(kind=I4P), intent(in), optional :: position

Position of positional CLA.

Return Value logical

Check if a CLA has been passed.


Called by

proc~~is_passed~~CalledByGraph proc~is_passed flap_command_line_arguments_group_t::command_line_arguments_group%is_passed proc~check_m_exclusive flap_command_line_arguments_group_t::command_line_arguments_group%check_m_exclusive proc~check_m_exclusive->proc~is_passed proc~is_passed~2 flap_command_line_interface_t::command_line_interface%is_passed proc~is_passed~2->proc~is_passed proc~parse flap_command_line_arguments_group_t::command_line_arguments_group%parse proc~parse->proc~check_m_exclusive program~flap_test_action_store flap_test_action_store program~flap_test_action_store->proc~is_passed~2 none~get_varying~2 flap_command_line_interface_t::command_line_interface%get_varying program~flap_test_action_store->none~get_varying~2 none~get~2 flap_command_line_interface_t::command_line_interface%get program~flap_test_action_store->none~get~2 program~flap_test_basic flap_test_basic program~flap_test_basic->proc~is_passed~2 proc~parse~2 flap_command_line_interface_t::command_line_interface%parse program~flap_test_basic->proc~parse~2 program~flap_test_basic->none~get_varying~2 program~flap_test_basic->none~get~2 proc~parse~2->proc~parse proc~fake_call flap_test_group::fake_call proc~fake_call->proc~parse~2 proc~fake_call->none~get~2 proc~get_cla_list_varying_char~2 flap_command_line_interface_t::command_line_interface%get_cla_list_varying_char proc~get_cla_list_varying_char~2->proc~parse~2 proc~get_cla_list_varying_i1p~2 flap_command_line_interface_t::command_line_interface%get_cla_list_varying_I1P proc~get_cla_list_varying_i1p~2->proc~parse~2 proc~get_cla_list_varying_i2p~2 flap_command_line_interface_t::command_line_interface%get_cla_list_varying_I2P proc~get_cla_list_varying_i2p~2->proc~parse~2 proc~get_cla_list_varying_i4p~2 flap_command_line_interface_t::command_line_interface%get_cla_list_varying_I4P proc~get_cla_list_varying_i4p~2->proc~parse~2 proc~get_cla_list_varying_i8p~2 flap_command_line_interface_t::command_line_interface%get_cla_list_varying_I8P proc~get_cla_list_varying_i8p~2->proc~parse~2 proc~get_cla_list_varying_logical~2 flap_command_line_interface_t::command_line_interface%get_cla_list_varying_logical proc~get_cla_list_varying_logical~2->proc~parse~2 proc~get_cla_list_varying_r16p~2 flap_command_line_interface_t::command_line_interface%get_cla_list_varying_R16P proc~get_cla_list_varying_r16p~2->proc~parse~2 proc~get_cla_list_varying_r4p~2 flap_command_line_interface_t::command_line_interface%get_cla_list_varying_R4P proc~get_cla_list_varying_r4p~2->proc~parse~2 proc~get_cla_list_varying_r8p~2 flap_command_line_interface_t::command_line_interface%get_cla_list_varying_R8P proc~get_cla_list_varying_r8p~2->proc~parse~2 proc~get_cla_list~2 flap_command_line_interface_t::command_line_interface%get_cla_list proc~get_cla_list~2->proc~parse~2 proc~get_cla~2 flap_command_line_interface_t::command_line_interface%get_cla proc~get_cla~2->proc~parse~2 program~flap_save_bash_completion flap_save_bash_completion program~flap_save_bash_completion->proc~parse~2 program~flap_test_choices_logical flap_test_choices_logical program~flap_test_choices_logical->proc~parse~2 program~flap_test_choices_logical->none~get~2 program~flap_test_nested flap_test_nested program~flap_test_nested->proc~parse~2 program~flap_test_nested->none~get~2 program~flap_test_string flap_test_string program~flap_test_string->proc~parse~2 program~flap_test_string->none~get~2 none~get_varying~2->proc~get_cla_list_varying_char~2 none~get_varying~2->proc~get_cla_list_varying_i1p~2 none~get_varying~2->proc~get_cla_list_varying_i2p~2 none~get_varying~2->proc~get_cla_list_varying_i4p~2 none~get_varying~2->proc~get_cla_list_varying_i8p~2 none~get_varying~2->proc~get_cla_list_varying_logical~2 none~get_varying~2->proc~get_cla_list_varying_r4p~2 none~get_varying~2->proc~get_cla_list_varying_r8p~2 none~get~2->proc~get_cla_list~2 none~get~2->proc~get_cla~2 program~flap_test_group flap_test_group program~flap_test_group->proc~fake_call program~flap_save_man_page flap_save_man_page program~flap_save_man_page->none~get~2 program~flap_save_usage_to_markdown flap_save_usage_to_markdown program~flap_save_usage_to_markdown->none~get~2 program~flap_test_ansi_color_style flap_test_ansi_color_style program~flap_test_ansi_color_style->none~get~2 program~flap_test_duplicated_clas flap_test_duplicated_clas program~flap_test_duplicated_clas->none~get~2 program~flap_test_group_examples flap_test_group_examples program~flap_test_group_examples->none~get~2 program~flap_test_hidden flap_test_hidden program~flap_test_hidden->none~get~2 program~flap_test_ignore_unknown_clas flap_test_ignore_unknown_clas program~flap_test_ignore_unknown_clas->none~get~2 program~flap_test_minimal flap_test_minimal program~flap_test_minimal->none~get~2 program~flap_test_nargs_insufficient flap_test_nargs_insufficient program~flap_test_nargs_insufficient->none~get~2 program~flap_test_nargs_insufficient~2 flap_test_nargs_insufficient program~flap_test_nargs_insufficient~2->none~get~2

Source Code

  pure function is_passed(self, switch, position)
  !< Check if a CLA has been passed.
  class(command_line_arguments_group), intent(in) :: self      !< CLAsG data.
  character(*), optional,              intent(in) :: switch    !< Switch name.
  integer(I4P), optional,              intent(in) :: position  !< Position of positional CLA.
  logical                                         :: is_passed !< Check if a CLA has been passed.
  integer(I4P)                                    :: a         !< CLA counter.

  is_passed = .false.
  if (self%Na>0) then
    if (present(switch)) then
      do a=1, self%Na
        if (.not.self%cla(a)%is_positional) then
          if ((self%cla(a)%switch==switch).or.(self%cla(a)%switch_ab==switch)) then
            is_passed = self%cla(a)%is_passed
            exit
          endif
        endif
      enddo
    elseif (present(position)) then
      is_passed = self%cla(position)%is_passed
    endif
  endif
  endfunction is_passed