is_required_passed Function

private function is_required_passed(self, pref) result(is_ok)

Check if required CLA is passed.

Type Bound

command_line_argument

Arguments

Type IntentOptional Attributes Name
class(command_line_argument), intent(inout) :: self

CLA data.

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

Prefixing string.

Return Value logical

Check result.


Calls

proc~~is_required_passed~2~~CallsGraph proc~is_required_passed~2 flap_command_line_argument_t::command_line_argument%is_required_passed proc~errored~2 flap_command_line_argument_t::command_line_argument%errored proc~is_required_passed~2->proc~errored~2 interface~colorize face::colorize proc~errored~2->interface~colorize proc~print_error_message flap_object_t::object%print_error_message proc~errored~2->proc~print_error_message str str proc~errored~2->str proc~colorize_default face::colorize_default interface~colorize->proc~colorize_default proc~color_index face::color_index proc~colorize_default->proc~color_index proc~style_index face::style_index proc~colorize_default->proc~style_index proc~upper face::upper proc~colorize_default->proc~upper

Called by

proc~~is_required_passed~2~~CalledByGraph proc~is_required_passed~2 flap_command_line_argument_t::command_line_argument%is_required_passed proc~get_cla flap_command_line_argument_t::command_line_argument%get_cla proc~get_cla->proc~is_required_passed~2 proc~get_cla_list flap_command_line_argument_t::command_line_argument%get_cla_list proc~get_cla_list->proc~is_required_passed~2 proc~get_cla_list_varying_char flap_command_line_argument_t::command_line_argument%get_cla_list_varying_char proc~get_cla_list_varying_char->proc~is_required_passed~2 proc~get_cla_list_varying_i1p flap_command_line_argument_t::command_line_argument%get_cla_list_varying_I1P proc~get_cla_list_varying_i1p->proc~is_required_passed~2 proc~get_cla_list_varying_i2p flap_command_line_argument_t::command_line_argument%get_cla_list_varying_I2P proc~get_cla_list_varying_i2p->proc~is_required_passed~2 proc~get_cla_list_varying_i4p flap_command_line_argument_t::command_line_argument%get_cla_list_varying_I4P proc~get_cla_list_varying_i4p->proc~is_required_passed~2 proc~get_cla_list_varying_i8p flap_command_line_argument_t::command_line_argument%get_cla_list_varying_I8P proc~get_cla_list_varying_i8p->proc~is_required_passed~2 proc~get_cla_list_varying_logical flap_command_line_argument_t::command_line_argument%get_cla_list_varying_logical proc~get_cla_list_varying_logical->proc~is_required_passed~2 proc~get_cla_list_varying_r16p flap_command_line_argument_t::command_line_argument%get_cla_list_varying_R16P proc~get_cla_list_varying_r16p->proc~is_required_passed~2 proc~get_cla_list_varying_r4p flap_command_line_argument_t::command_line_argument%get_cla_list_varying_R4P proc~get_cla_list_varying_r4p->proc~is_required_passed~2 proc~get_cla_list_varying_r8p flap_command_line_argument_t::command_line_argument%get_cla_list_varying_R8P proc~get_cla_list_varying_r8p->proc~is_required_passed~2 proc~is_required_passed flap_command_line_arguments_group_t::command_line_arguments_group%is_required_passed proc~is_required_passed->proc~is_required_passed~2 none~get flap_command_line_argument_t::command_line_argument%get none~get->proc~get_cla none~get->proc~get_cla_list none~get_varying flap_command_line_argument_t::command_line_argument%get_varying none~get_varying->proc~get_cla_list_varying_char none~get_varying->proc~get_cla_list_varying_i1p none~get_varying->proc~get_cla_list_varying_i2p none~get_varying->proc~get_cla_list_varying_i4p none~get_varying->proc~get_cla_list_varying_i8p none~get_varying->proc~get_cla_list_varying_logical none~get_varying->proc~get_cla_list_varying_r4p none~get_varying->proc~get_cla_list_varying_r8p proc~parse~2 flap_command_line_interface_t::command_line_interface%parse proc~parse~2->proc~is_required_passed proc~fake_call flap_test_group::fake_call proc~fake_call->proc~parse~2 none~get~2 flap_command_line_interface_t::command_line_interface%get 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->none~get_varying 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->none~get_varying 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->none~get_varying 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->none~get_varying 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->none~get_varying 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->none~get_varying 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->none~get_varying 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->none~get_varying 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->none~get_varying 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->none~get 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->none~get 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_basic flap_test_basic program~flap_test_basic->proc~parse~2 none~get_varying~2 flap_command_line_interface_t::command_line_interface%get_varying program~flap_test_basic->none~get_varying~2 program~flap_test_basic->none~get~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_action_store flap_test_action_store 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->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

  function is_required_passed(self, pref) result(is_ok)
  !< Check if required CLA is passed.
  class(command_line_argument), intent(inout) :: self  !< CLA data.
  character(*), optional,       intent(in)    :: pref  !< Prefixing string.
  logical                                     :: is_ok !< Check result.

  is_ok = .true.
  if (((.not.self%is_passed).and.self%is_required).or.((.not.self%is_passed).and.(.not.allocated(self%def)))) then
    call self%errored(pref=pref, error=ERROR_MISSING_REQUIRED)
    is_ok = .false.
  endif
  endfunction is_required_passed