Set status flag and message.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(nlesolver_type), | intent(inout) | :: | me | |||
| integer, | intent(in) | :: | istat |
status code |
||
| character(len=*), | intent(in) | :: | string |
status message |
||
| integer, | intent(in), | optional | :: | i |
an integer value to append |
|
| real(kind=wp), | intent(in), | optional | :: | r |
a real value to append |
subroutine set_status(me,istat,string,i,r) implicit none class(nlesolver_type),intent(inout) :: me integer,intent(in) :: istat !! status code character(len=*),intent(in) :: string !! status message integer,intent(in),optional :: i !! an integer value to append real(wp),intent(in),optional :: r !! a real value to append character(len=:),allocatable :: message !! the full message to log integer :: iostat !! write `iostat` code message = trim(string) if (present(i)) message = message//' '//int2str(i) if (present(r)) message = message//' '//real2str(r) if (me%verbose) write(me%iunit,'(A)',iostat=iostat) message ! store in the class: me%istat = istat me%message = message end subroutine set_status