Alternate version of json_file_variable_matrix_info, where "path" is kind=CDK.
If found
is present, no exceptions will be thrown if an
error occurs. Otherwise, an exception will be thrown if the
variable is not found.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(json_file), | intent(inout) | :: | me | |||
character(kind=CDK,len=*), | intent(in) | :: | path | path to the variable |
||
logical(kind=LK), | intent(out) | :: | is_matrix | true if it is a valid matrix |
||
logical(kind=LK), | intent(out), | optional | :: | found | true if it was found |
|
integer(kind=IK), | intent(out), | optional | :: | var_type | variable type of data in the matrix (if all elements have the same type) |
|
integer(kind=IK), | intent(out), | optional | :: | n_sets | number of data sets (i.e., matrix rows if using row-major order) |
|
integer(kind=IK), | intent(out), | optional | :: | set_size | size of each data set (i.e., matrix cols if using row-major order) |
|
character(kind=CK,len=:), | intent(out), | optional | allocatable | :: | name | variable name |
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are given different colours to make them easier to distinguish in large graphs.
subroutine wrap_json_file_variable_matrix_info(me,path,is_matrix,found,&
var_type,n_sets,set_size,name)
implicit none
class(json_file),intent(inout) :: me
character(kind=CDK,len=*),intent(in) :: path !! path to the variable
logical(LK),intent(out) :: is_matrix !! true if it is a valid matrix
logical(LK),intent(out),optional :: found !! true if it was found
integer(IK),intent(out),optional :: var_type !! variable type of data in
!! the matrix (if all elements have
!! the same type)
integer(IK),intent(out),optional :: n_sets !! number of data sets (i.e., matrix
!! rows if using row-major order)
integer(IK),intent(out),optional :: set_size !! size of each data set (i.e., matrix
!! cols if using row-major order)
character(kind=CK,len=:),allocatable,intent(out),optional :: name !! variable name
call me%matrix_info(to_unicode(path),is_matrix,found,var_type,n_sets,set_size,name)
end subroutine wrap_json_file_variable_matrix_info