ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation. |
This module contains classes and procedures for reporting and handling errors.
More...
Data Types | |
interface | err_type |
This is the derived type for generating objects to gracefully and verbosely handle runtime unexpected behavior in the ParaMonte library. More... | |
interface | getFile |
Generate and return a decorated string as "@file(FILE)" where FILE is replaced by the input source file of interest.More... | |
interface | getFine |
Generate and return a decorated string resulting from the concatenation of getFile(FILE) and getLine(LINE) where FILE and LINE are replaced by the specified input source file and line of interest.More... | |
interface | getLine |
Generate and return a decorated string as "@line(LINE)" where LINE is replaced by the input source line of interest.More... | |
type | mark_type |
This is the derived type for constructing objects that contain the specifications of the generic interface setMarked along with a dynamic method show that acts as a convenience wrapper around the generic interface setMarked. More... | |
type | message_type |
This is the base derived type for constructing subclasses that contain the specifications of the generic message interfaces. More... | |
type | note_type |
Generate and return an object of type mark_type with the user-specified input attributes. More... | |
interface | setAborted |
Write the input string in the format of a fatal error to the output, then call error stop or return the control to the caller if requested.More... | |
interface | setAsserted |
Verify the input assertion holds and if it does not, print the (optional) input message on stdout and halt the program via error stop or (optionally) return the program control to the caller routine, if requested.More... | |
interface | setMarked |
Write the input string in the format of a custom notification, warning, or other types of messages to the output. More... | |
interface | setNoted |
Write the input string in the format of a notification to the output. More... | |
interface | setWarned |
Write the input string in the format of a warning to the output. More... | |
interface | show |
Generate and return an object of type stop_type with the user-specified input attributes. More... | |
type | stop_type |
Generate and return an object of type warn_type with the user-specified input attributes. More... | |
type | warn_type |
Generate and return an object of type note_type with the user-specified input attributes. More... | |
Variables | |
character(*, SK), parameter | MODULE_NAME = "@pm_err" |
logical(LK), parameter | SOFT_EXIT_ENABLED = .false._LK |
The scalar logical of default kind LK.If .true. , the setAborted generic interface avoid calling the Fortran error stop statement upon detecting the occurrence of an error.Instead it return the program control to the caller procedure for further actions. This flag is important for testing the parallel implementations of the routines of the ParaMonte library. More... | |
integer(IK) | STATNULL = -huge(0_IK) |
The scalar integer of default kind IK containing the null value initially assigned to the stat component of the err_type.It is used to detect and control the printing of the compiler error stat number if any exists.More... | |
This module contains classes and procedures for reporting and handling errors.
CHECK_ENABLED=1
.error stop
to halt the program unless it is specifically overridden by the user (via the input argument renabled
).error stop
shuts down the entire dynamic session causing data loss and wasting user time.test_pm_err
Final Remarks ⛓
If you believe this algorithm or its documentation can be improved, we appreciate your contribution and help to edit this page's documentation and source file on GitHub.
For details on the naming abbreviations, see this page.
For details on the naming conventions, see this page.
This software is distributed under the MIT license with additional terms outlined below.
This software is available to the public under a highly permissive license.
Help us justify its continued development and maintenance by acknowledging its benefit to society, distributing it, and contributing to it.
character(*, SK), parameter pm_err::MODULE_NAME = "@pm_err" |
Definition at line 58 of file pm_err.F90.
logical(LK), parameter pm_err::SOFT_EXIT_ENABLED = .false._LK |
The scalar logical
of default kind LK.
If .true.
, the setAborted generic interface avoid calling the Fortran error stop
statement upon detecting the occurrence of an error.
Instead it return the program control to the caller procedure for further actions.
This flag is important for testing the parallel implementations of the routines of the ParaMonte library.
Final Remarks ⛓
If you believe this algorithm or its documentation can be improved, we appreciate your contribution and help to edit this page's documentation and source file on GitHub.
For details on the naming abbreviations, see this page.
For details on the naming conventions, see this page.
This software is distributed under the MIT license with additional terms outlined below.
This software is available to the public under a highly permissive license.
Help us justify its continued development and maintenance by acknowledging its benefit to society, distributing it, and contributing to it.
Definition at line 79 of file pm_err.F90.
integer(IK) pm_err::STATNULL = -huge(0_IK) |
The scalar integer of default kind IK containing the null value initially assigned to the stat
component of the err_type.
It is used to detect and control the printing of the compiler error stat
number if any exists.
Final Remarks ⛓
If you believe this algorithm or its documentation can be improved, we appreciate your contribution and help to edit this page's documentation and source file on GitHub.
For details on the naming abbreviations, see this page.
For details on the naming conventions, see this page.
This software is distributed under the MIT license with additional terms outlined below.
This software is available to the public under a highly permissive license.
Help us justify its continued development and maintenance by acknowledging its benefit to society, distributing it, and contributing to it.
Definition at line 98 of file pm_err.F90.