Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(grw_linearray_type) | :: | me | ||||
type(tem_line_type), | intent(in) | :: | val | |||
integer, | intent(in), | optional | :: | length |
optional length to expand the array |
subroutine append_ga_line(me, val, length)
type(grw_linearray_type) :: me !< array to append the value to
type(tem_line_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_line