is_defined_group Function

private function is_defined_group(self, group, g) result(defined)

Check if a CLAs group has been defined.

Type Bound

command_line_interface

Arguments

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

CLI data.

character(len=*), intent(in) :: group

Name of group (command) of CLAs.

integer(kind=I4P), intent(out), optional :: g

Index of group.

Return Value logical

Check if a CLAs group has been defined.


Called by

proc~~is_defined_group~~CalledByGraph proc~is_defined_group flap_command_line_interface_t::command_line_interface%is_defined_group proc~add_group flap_command_line_interface_t::command_line_interface%add_group proc~add_group->proc~is_defined_group proc~add~2 flap_command_line_interface_t::command_line_interface%add proc~add~2->proc~is_defined_group proc~add~2->proc~add_group proc~check_m_exclusive~2 flap_command_line_interface_t::command_line_interface%check_m_exclusive proc~check_m_exclusive~2->proc~is_defined_group proc~check~3 flap_command_line_interface_t::command_line_interface%check proc~check~3->proc~is_defined_group 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~is_defined_group proc~parse~2 flap_command_line_interface_t::command_line_interface%parse 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~is_defined_group 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~is_defined_group 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~is_defined_group 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~is_defined_group 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~is_defined_group 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~is_defined_group 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~is_defined_group 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~is_defined_group 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~is_defined_group proc~get_cla_list~2->proc~parse~2 proc~get_clasg_indexes flap_command_line_interface_t::command_line_interface%get_clasg_indexes proc~get_clasg_indexes->proc~is_defined_group proc~get_cla~2 flap_command_line_interface_t::command_line_interface%get_cla proc~get_cla~2->proc~is_defined_group proc~get_cla~2->proc~parse~2 proc~is_called_group flap_command_line_interface_t::command_line_interface%is_called_group proc~is_called_group->proc~is_defined_group proc~is_defined~2 flap_command_line_interface_t::command_line_interface%is_defined proc~is_defined~2->proc~is_defined_group proc~is_passed~2 flap_command_line_interface_t::command_line_interface%is_passed proc~is_passed~2->proc~is_defined_group proc~set_mutually_exclusive_groups flap_command_line_interface_t::command_line_interface%set_mutually_exclusive_groups proc~set_mutually_exclusive_groups->proc~is_defined_group none~get_varying~2 flap_command_line_interface_t::command_line_interface%get_varying 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 flap_command_line_interface_t::command_line_interface%get none~get~2->proc~get_cla_list~2 none~get~2->proc~get_cla~2 proc~fake_call flap_test_group::fake_call proc~fake_call->proc~add_group proc~fake_call->proc~add~2 proc~fake_call->none~get~2 proc~fake_call->proc~parse~2 proc~get_args_from_invocation flap_command_line_interface_t::command_line_interface%get_args_from_invocation proc~get_args_from_invocation->proc~get_clasg_indexes proc~get_args_from_string flap_command_line_interface_t::command_line_interface%get_args_from_string proc~get_args_from_string->proc~get_clasg_indexes proc~parse~2->proc~add~2 proc~parse~2->proc~check_m_exclusive~2 proc~parse~2->proc~check~3 proc~parse~2->proc~is_defined~2 none~get_args flap_command_line_interface_t::command_line_interface%get_args proc~parse~2->none~get_args program~flap_save_bash_completion flap_save_bash_completion program~flap_save_bash_completion->proc~add_group program~flap_save_bash_completion->proc~add~2 program~flap_save_bash_completion->proc~parse~2 program~flap_save_man_page flap_save_man_page program~flap_save_man_page->proc~add~2 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->proc~add~2 program~flap_save_usage_to_markdown->none~get~2 program~flap_test_action_store flap_test_action_store program~flap_test_action_store->proc~add~2 program~flap_test_action_store->proc~is_passed~2 program~flap_test_action_store->none~get_varying~2 program~flap_test_action_store->none~get~2 program~flap_test_ansi_color_style flap_test_ansi_color_style program~flap_test_ansi_color_style->proc~add~2 program~flap_test_ansi_color_style->none~get~2 program~flap_test_basic flap_test_basic program~flap_test_basic->proc~add~2 program~flap_test_basic->proc~is_passed~2 program~flap_test_basic->none~get_varying~2 program~flap_test_basic->none~get~2 program~flap_test_basic->proc~parse~2 program~flap_test_choices_logical flap_test_choices_logical program~flap_test_choices_logical->proc~add~2 program~flap_test_choices_logical->none~get~2 program~flap_test_choices_logical->proc~parse~2 program~flap_test_duplicated_clas flap_test_duplicated_clas program~flap_test_duplicated_clas->proc~add~2 program~flap_test_duplicated_clas->none~get~2 program~flap_test_group_examples flap_test_group_examples program~flap_test_group_examples->proc~add_group program~flap_test_group_examples->proc~add~2 program~flap_test_group_examples->proc~is_called_group program~flap_test_group_examples->none~get~2 program~flap_test_hidden flap_test_hidden program~flap_test_hidden->proc~add~2 program~flap_test_hidden->none~get~2 program~flap_test_ignore_unknown_clas flap_test_ignore_unknown_clas program~flap_test_ignore_unknown_clas->proc~add~2 program~flap_test_ignore_unknown_clas->none~get~2 program~flap_test_minimal flap_test_minimal program~flap_test_minimal->proc~add~2 program~flap_test_minimal->none~get~2 program~flap_test_nargs_insufficient flap_test_nargs_insufficient program~flap_test_nargs_insufficient->proc~add~2 program~flap_test_nargs_insufficient->none~get~2 program~flap_test_nargs_insufficient~2 flap_test_nargs_insufficient program~flap_test_nargs_insufficient~2->proc~add~2 program~flap_test_nargs_insufficient~2->none~get~2 program~flap_test_nested flap_test_nested program~flap_test_nested->proc~add_group program~flap_test_nested->proc~add~2 program~flap_test_nested->proc~is_called_group program~flap_test_nested->proc~set_mutually_exclusive_groups program~flap_test_nested->none~get~2 program~flap_test_nested->proc~parse~2 program~flap_test_string flap_test_string program~flap_test_string->proc~add~2 program~flap_test_string->none~get~2 program~flap_test_string->proc~parse~2 none~get_args->proc~get_args_from_invocation none~get_args->proc~get_args_from_string program~flap_test_group flap_test_group program~flap_test_group->proc~fake_call

Source Code

  function is_defined_group(self, group, g) result(defined)
  !< Check if a CLAs group has been defined.
  class(command_line_interface), intent(in)  :: self    !< CLI data.
  character(*),                  intent(in)  :: group   !< Name of group (command) of CLAs.
  integer(I4P), optional,        intent(out) :: g       !< Index of group.
  logical                                    :: defined !< Check if a CLAs group has been defined.
  integer(I4P)                               :: gg      !< Counter.
  integer(I4P)                               :: ggg     !< Counter.

  defined = .false.
  do gg=0, size(self%clasg,dim=1)-1
    ggg = gg
    if (allocated(self%clasg(gg)%group)) defined = (self%clasg(gg)%group==group)
    if (defined) exit
  enddo
  if (present(g)) g = ggg
  endfunction is_defined_group