linalg_state_type
defines a state return type for a
linear algebra routine. State contains a status flag, a comment, and a
procedure specifier that can be used to mark where the error happened
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
character(len=MSG_LENGTH), | public | :: | message | = | repeat(' ', MSG_LENGTH) |
Message associated to the current state |
|
integer(kind=ilp), | public | :: | state | = | STDLIB_SUCCESS |
The current exit state |
|
character(len=NAME_LENGTH), | public | :: | where_at | = | repeat(' ', NAME_LENGTH) |
Location of the state change |
Error creation message, with location location
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | where_at |
Location |
||
integer, | intent(in) | :: | flag |
Input error flag |
||
class(*), | intent(in), | optional, | dimension(..) | :: | a1 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a2 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a3 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a4 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a5 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a6 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a7 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a8 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a9 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a10 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a11 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a12 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a13 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a14 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a15 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a16 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a17 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a18 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a19 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a20 |
Optional rank-agnostic arguments |
Error creation message, from N input variables (numeric or strings)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | flag |
Input error flag |
||
class(*), | intent(in), | optional, | dimension(..) | :: | a1 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a2 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a3 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a4 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a5 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a6 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a7 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a8 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a9 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a10 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a11 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a12 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a13 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a14 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a15 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a16 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a17 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a18 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a19 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a20 |
Optional rank-agnostic arguments |
Cleanup
Cleanup the object
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(state_type), | intent(inout) | :: | this |
Check if the current state is an error state
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(state_type), | intent(in) | :: | this |
Handle optional error message
Flow control: on output flag present, return it; otherwise, halt on error
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(state_type), | intent(in) | :: | ierr | |||
class(state_type), | intent(inout), | optional | :: | ierr_out |
State properties
Check if the current state is successful
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(state_type), | intent(in) | :: | this |
Parse a generic list of arguments provided to the error constructor
Set error flag
Set chain Add location
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(state_type), | intent(inout) | :: | new_state |
The current state variable |
||
character(len=*), | intent(in) | :: | where_at |
Error Location |
||
integer, | intent(in) | :: | flag |
Input error flag |
||
class(*), | intent(in), | optional, | dimension(..) | :: | a1 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a2 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a3 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a4 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a5 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a6 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a7 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a8 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a9 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a10 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a11 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a12 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a13 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a14 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a15 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a16 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a17 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a18 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a19 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a20 |
Optional rank-agnostic arguments |
Parse a generic list of arguments provided to the error constructor
Set error flag
Set chain
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(state_type), | intent(inout) | :: | new_state |
The current state variable |
||
integer, | intent(in) | :: | flag |
Input error flag |
||
class(*), | intent(in), | optional, | dimension(..) | :: | a1 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a2 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a3 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a4 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a5 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a6 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a7 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a8 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a9 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a10 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a11 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a12 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a13 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a14 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a15 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a16 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a17 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a18 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a19 |
Optional rank-agnostic arguments |
class(*), | intent(in), | optional, | dimension(..) | :: | a20 |
Optional rank-agnostic arguments |
Print error message
Produce a nice error string
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(state_type), | intent(in) | :: | this |
Print error message
Formatted message
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(linalg_state_type), | intent(in) | :: | this |
type, extends(state_type) :: linalg_state_type contains !> Print error message procedure :: print_msg => state_message end type linalg_state_type