34 character(*),
intent(in):: name
49 logical,
intent(out),
optional:: err
70 character(TOKEN),
pointer:: varnames_array(:) =>null()
73 character(STRING):: cause_c
74 character(*),
parameter:: subname =
'HstNmlInfoDelete' 86 if ( .not. gthstnml % initialized )
then 88 cause_c =
'GTHST_NMLINFO' 92 if ( .not. gthstnml % define_mode )
then 104 call dbgmessage(
'multiple entries (%c) will be deleted', c1 = trim(name) )
106 & carray = varnames_array )
107 vnmax =
size( varnames_array )
111 & gthstnml = gthstnml, &
112 & name = varnames_array(i), &
115 deallocate( varnames_array )
120 deallocate( varnames_array )
129 hptr => gthstnml % gthstnml_list
132 & previous = hptr_prev, &
135 if ( .not.
associated( hptr ) )
goto 999
136 if ( ( trim(hptr % name) /=
'' ) .and.
associated( hptr_prev ) )
then 137 call dbgmessage(
'entry (%c) is deleted', c1 = trim( adjustl( name ) ) )
138 hptr_prev % next => hptr_next
147 call storeerror( stat, subname, err, cause_c )
integer, parameter, public dc_earglack
integer, parameter, public usr_errno
integer, parameter, public hst_enotindefine
integer, parameter, public dc_enotinit
integer, parameter, public token
Character length for word, token.
logical function, public present_and_true(arg)
character(1), parameter, public name_delimiter
subroutine, public storeerror(number, where, err, cause_c, cause_i)
integer, parameter, public dc_noerr
character(string) function, public joinchar(carray, expr)
integer, parameter, public dp
Double Precision Real number.
subroutine, public dbgmessage(fmt, i, r, d, L, n, c1, c2, c3, ca)
recursive subroutine hstnmlinfodelete(gthstnml, name, err)
logical function, public present_and_not_empty(arg)
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
integer, parameter, public stdout
Unit number for Standard OUTPUT.
Handling character types.
Provides kind type parameter values.
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
integer, parameter, public string
Character length for string.