input_bin Function

private function input_bin(me, key, default_value) result(val)

Type Bound

input_t

Arguments

Type IntentOptional Attributes Name
class(input_t), intent(in) :: me
character(len=*), intent(in) :: key
logical, intent(in), optional :: default_value

Return Value logical


Calls

proc~~input_bin~~CallsGraph proc~input_bin input_t%input_bin proc~continue_if continue_if proc~input_bin->proc~continue_if proc~input_has_key input_t%input_has_key proc~input_bin->proc~input_has_key proc~input_node input_t%input_node proc~input_bin->proc~input_node proc~select_scalar select_scalar proc~input_bin->proc~select_scalar to_logical to_logical proc~input_bin->to_logical get get proc~input_has_key->get proc~select_dict select_dict proc~input_has_key->proc~select_dict proc~input_node->get proc~dictionary_traverse dictionary_traverse proc~input_node->proc~dictionary_traverse proc~input_node->proc~select_dict proc~dictionary_traverse->proc~dictionary_traverse get_dictionary get_dictionary proc~dictionary_traverse->get_dictionary proc~abort_if abort_if proc~dictionary_traverse->proc~abort_if

Called by

proc~~input_bin~~CalledByGraph proc~input_bin input_t%input_bin proc~boundary_init_part1 boundary_init_part1 proc~boundary_init_part1->proc~input_bin proc~channel_init_part1 channel_init_part1 proc~channel_init_part1->proc~input_bin proc~hdf5_init hdf5_t%hdf5_init proc~hdf5_init->proc~input_bin proc~sim_init simulation_t%sim_init proc~sim_init->proc~input_bin proc~solid_init_part1 solid_init_part1 proc~solid_init_part1->proc~input_bin proc~strand_init_part1 strand_init_part1 proc~strand_init_part1->proc~input_bin program~reims_p reims_p program~reims_p->proc~boundary_init_part1 program~reims_p->proc~channel_init_part1 program~reims_p->proc~sim_init program~reims_p->proc~solid_init_part1 program~reims_p->proc~strand_init_part1

Source Code

function input_bin(me,key,default_value) result(val)
    class(input_t), intent(in) :: me
    character(*), intent(in)   :: key
    logical, optional, intent(in) :: default_value
    logical                    :: val
    logical                    :: ok
    type(type_scalar), pointer :: scalar

    if(present(default_value)) val = default_value
    if(.not.me%has_key(key) .and. present(default_value)) return
    scalar => select_scalar(me%node(key))
    val = scalar%to_logical(.true.,ok)
    call continue_if(scalar, ok)
end function input_bin