append_ga_stringkeyvaluepair Subroutine

private subroutine append_ga_stringkeyvaluepair(me, val, length)

Arguments

Type IntentOptional Attributes Name
type(grw_stringkeyvaluepairarray_type) :: me
type(tem_stringKeyValuePair_type), intent(in) :: val
integer, intent(in), optional :: length

optional length to expand the array


Calls

proc~~append_ga_stringkeyvaluepair~~CallsGraph proc~append_ga_stringkeyvaluepair append_ga_stringkeyvaluepair interface~expand~3 expand proc~append_ga_stringkeyvaluepair->interface~expand~3 proc~expand_ga_stringkeyvaluepair expand_ga_stringkeyvaluepair interface~expand~3->proc~expand_ga_stringkeyvaluepair

Called by

proc~~append_ga_stringkeyvaluepair~~CalledByGraph proc~append_ga_stringkeyvaluepair append_ga_stringkeyvaluepair interface~append~4 append interface~append~4->proc~append_ga_stringkeyvaluepair proc~append_possible_variable append_possible_variable proc~append_possible_variable->interface~append~4 proc~tem_create_varmap tem_create_varMap proc~tem_create_varmap->interface~append~4 proc~tem_load_bc_state tem_load_bc_state proc~tem_load_bc_state->interface~append~4 interface~tem_variable_loadmapping tem_variable_loadMapping proc~tem_load_bc_state->interface~tem_variable_loadmapping proc~tem_variable_loadmapping_single tem_variable_loadMapping_single proc~tem_variable_loadmapping_single->interface~append~4 interface~append~35 append interface~append~35->proc~append_possible_variable interface~tem_variable_loadmapping->proc~tem_variable_loadmapping_single proc~tem_variable_loadmapping_vector tem_variable_loadMapping_vector interface~tem_variable_loadmapping->proc~tem_variable_loadmapping_vector proc~hvs_output_init hvs_output_init proc~hvs_output_init->proc~tem_create_varmap proc~tem_init_convergence tem_init_convergence proc~tem_init_convergence->proc~tem_create_varmap proc~tem_init_depend tem_init_depend proc~tem_init_depend->proc~tem_create_varmap proc~tem_init_tracker tem_init_tracker proc~tem_init_tracker->proc~tem_create_varmap proc~tem_init_tracker->proc~hvs_output_init proc~tem_opvar_reduction_transient_init tem_opVar_reduction_transient_init proc~tem_opvar_reduction_transient_init->proc~tem_create_varmap proc~tem_variable_loadmapping_vector->proc~tem_variable_loadmapping_single

Source Code

  subroutine append_ga_stringkeyvaluepair(me, val, length)
    type(grw_stringkeyvaluepairarray_type) :: me !< array to append the value to
    type(tem_stringkeyvaluepair_type), intent(in) :: val !< value to append
    !> optional length to expand the array
    integer, intent(in), optional :: length

    ! value to append is larger than all existing ones,
    ! just put it to the end of the list, this captures
    ! also the case of empty lists.
    ! in this case foundpos = me%nvals + 1 holds.
    if (me%nvals+1 > me%containersize) then
      ! expand the array, if its boundary is reached
      call expand(me = me, length = length)
    end if

    me%nvals = me%nvals+1
    me%val(me%nvals) = val

  end subroutine append_ga_stringkeyvaluepair