Appends the given value at the end of the list.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(list_routinestat_type), | intent(inout) | :: | list | |||
type(routine_stat_type), | intent(in), | POINTER | :: | value |
SUBROUTINE list_routinestat_push(list, value)
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
!! Appends the given value at the end of the list.
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
TYPE(list_routinestat_type), intent(inout) :: list
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
TYPE(routine_stat_type), POINTER, intent(in) :: value
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
INTEGER :: stat
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
IF(.not. ASSOCIATED(list%arr)) &
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
DBCSR_ABORT("list_routinestat_push: list is not initialized.")
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
if(list%size == size(list%arr)) &
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
call change_capacity_routinestat(list, 2*size(list%arr)+1)
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
list%size = list%size + 1
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
ALLOCATE(list%arr(list%size)%p, stat=stat)
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
IF (stat/=0)&
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
DBCSR_ABORT("list_routinestat_push: allocation failed")
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
list%arr(list%size)%p%value => value
# 21 "/__w/dbcsr/dbcsr/src/core/dbcsr_list_routinestat.F"
END SUBROUTINE list_routinestat_push