| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| logical, | public | :: | ok | = | .true. |
.true. means no error/warning/info |
|
| character(len=MAX_LENGTH_CATEGORY), | private | :: | category |
category of error/warning/info |
|||
| integer, | private | :: | code | = | NONE |
error/warning/info code, 0=none |
|
| logical, | private | :: | dbg | = | DEBUG_MODE |
debug mode flag |
|
| character(len=MAX_LENGTH_LOCATION), | private | :: | location |
location of error/warning/info |
|||
| character(len=MAX_LENGTH_MESSAGE), | private | :: | message |
message of error/warning/info |
|||
| integer, | private | :: | severity | = | NONE |
severity of the error, 0=none, 1=error, 2=warning, 3=info |
|
| character(len=MAX_LENGTH_SUGGESTION), | private | :: | suggestion |
suggestion for error/warning/info |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(debug), | intent(in) | :: | this |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(debug), | intent(inout) | :: | this | |||
| integer, | intent(in) | :: | severity | |||
| integer, | intent(in) | :: | code | |||
| character(len=*), | intent(in) | :: | category | |||
| character(len=*), | intent(in) | :: | message | |||
| character(len=*), | intent(in) | :: | location | |||
| character(len=*), | intent(in) | :: | suggestion |
type debug logical, private :: dbg = DEBUG_MODE !! debug mode flag logical :: ok = .true. !! .true. means no error/warning/info integer, private :: code = NONE !! error/warning/info code, 0=none integer, private :: severity = NONE !! severity of the error, 0=none, 1=error, 2=warning, 3=info character(MAX_LENGTH_CATEGORY), private :: category !! category of error/warning/info character(MAX_LENGTH_LOCATION), private :: location !! location of error/warning/info character(MAX_LENGTH_MESSAGE), private :: message !! message of error/warning/info character(MAX_LENGTH_SUGGESTION), private :: suggestion !! suggestion for error/warning/info contains procedure :: set procedure :: print => print_error procedure :: reset end type debug