Deallocated the internal data-structures if the given dictionary. Caution: If the stored keys or values are pointers, their targets will not get deallocated by this routine.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dict_str_i4_type), | intent(inout) | :: | dict |
SUBROUTINE dict_str_i4_destroy(dict) !! Deallocated the internal data-structures if the given dictionary. !! Caution: If the stored keys or values are pointers, their targets will !! not get deallocated by this routine. TYPE(dict_str_i4_type), intent(inout) :: dict TYPE(private_item_type_str_i4), POINTER :: item, prev_item INTEGER :: i IF (.not. ASSOCIATED(dict%buckets)) & DBCSR_ABORT("dict_str_i4_destroy: dictionary is not initialized.") do i = 1, size(dict%buckets) item => dict%buckets(i)%p do while (ASSOCIATED(item)) prev_item => item item => item%next deallocate (prev_item) end do end do deallocate (dict%buckets) dict%size = -1 END SUBROUTINE dict_str_i4_destroy